{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Введение в анализ данных\n",
"## Домашнее задание 3. Оценки параметров и сбор данных.\n",
"**Выполнил: Евдокимов Егор**\n",
"\n",
"Cсылка на [drive](https://drive.google.com/drive/folders/1UKfnCjGAkPKN8mxcIAfXCQFhhRcJWjVR?usp=sharing) со всем файлами."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Правила, прочитайте внимательно:**\n",
"\n",
"* Выполненную работу нужно отправить телеграм-боту `@miptstats_ad21_bot`. Для начала работы с ботом каждый раз отправляйте `/start`. Работы, присланные иным способом, не принимаются.\n",
"* Дедлайн см. в боте. После дедлайна работы не принимаются кроме случаев наличия уважительной причины.\n",
"* Прислать нужно ноутбук в формате ipynb и **в формате html**, который можно получить как `File -> Download as -> HTML`.\n",
"* Теоретические задачи необходимо прислать одним из следующих способов:\n",
" * фотографией в правильной ориентации, где все четко видно, а почерк разборчив;\n",
" * фотографией, **встроенной в ноутбук** посредством `Edit -> Insert Image`;\n",
" * в виде $LaTeX$ в markdown-ячейках.\n",
"* Теоретические задачи не проверяются, если какое-то требование не выполнено. Особенно внимательно все проверьте в случае выбора второго пункта. Неправильно вставленные фотографии могут не передаться при отправке.\n",
"* Будьте внимательны при работе со сбором данных. Ответственность за корректность ваших действий лежит на вас. Не нагружайте сервера, *делайте паузы между запросами*. Как следствие, начинайте выполнять задание заранее. **Если вас где-то забаннили и т.п., то это не является уважительной причиной продления дедлайна.**\n",
"* Выполнять задание необходимо полностью самостоятельно. **При обнаружении списывания все участники списывания будут сдавать устный зачет.**\n",
"* Решения, размещенные на каких-либо интернет-ресурсах, не принимаются. Кроме того, публикация решения в открытом доступе может быть приравнена к предоставлении возможности списать.\n",
"* Для выполнения задания используйте этот ноутбук в качестве основы, ничего не удаляя из него. Можно добавлять необходимое количество ячеек.\n",
"* Комментарии к решению пишите в markdown-ячейках.\n",
"* Выполнение задания (ход решения, выводы и пр.) должно быть осуществлено на русском языке.\n",
"* Если код будет не понятен проверяющему, оценка может быть снижена.\n",
"* Никакой код из данного задания при проверке запускаться не будет. *Если код студента не выполнен, недописан и т.д., то он не оценивается.*\n",
"\n",
"\n",
"**Баллы за задание:**\n",
"\n",
"Легкая часть (достаточно на \"хор\"):\n",
"* Задача 1 — 3 балла\n",
"* Задача 2 — 5 баллов\n",
"* Задача 3 — 12 баллов\n",
"\n",
"Сложная часть (необходимо на \"отл\"):\n",
"* Задача 4 — 6 баллов\n",
"* Задача 5 — 10 баллов"
]
},
{
"cell_type": "code",
"execution_count": 1293,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "ht9Xm0EucoAr"
},
"outputs": [],
"source": [
"import numpy as np\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"import seaborn as sns\n",
"\n",
"sns.set(style='whitegrid', font_scale=1.3, palette='Set2')\n",
"%matplotlib inline\n",
"\n",
"import requests\n",
"from time import sleep\n",
"import json\n",
"# добавленные\n",
"import scipy.stats as sps\n",
"from collections import Counter\n",
"from collections import OrderedDict\n",
"# plotly\n",
"import plotly\n",
"import plotly.graph_objects as go\n",
"import plotly.express as px\n",
"import plotly.io as pio\n",
"import plotly.figure_factory as ff"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Легкая часть"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "hYgTespbkXej"
},
"source": [
"### Задача 1. \n",
"\n",
"**a).** Пусть $X_1,...,X_n$ выборка из некоторого распределения $\\mathsf{P}$, причем ${\\sf D} X_1=\\sigma^2<+\\infty$, и $\\sigma$ неизвестно. \n",
"Рассмотрим оценку $S^2 = \\overline{X^2}-\\overline{X}^2$ дисперсии $\\sigma^2$.\n",
"\n",
"Докажите, что $S^2=\\frac1n\\sum\\limits_{i=1}^n\\left(X_i-\\overline{X}\\right)^2$.\n",
"\n",
"**Доказательство:**\n",
"Согласно определению $S^2 = \\frac{1}{n} \\sum\\limits_{i=1}^n X_i^2 - (\\frac{1}{n} \\sum\\limits_{i=1}^n X_i)^2 = \n",
"\\frac{1}{n} (\\sum\\limits_{i=1}^{n}X_i^2 - 2(\\sum\\limits_{i=1}^{n}X_i)(\\frac{1}{n} \\sum\\limits_{i=1}^{n}X_i) + n(\\frac{1}{n}\\sum\\limits_{i=1}^n X_i)^{2}) = \\frac{1}{n}((\\sum\\limits_{i=1}^n X_i^2) - 2\\overline{X}(\\sum\\limits_{i=1}^n X_i) + n(\\overline{X})^{2}) = \\frac{1}{n}(\\sum\\limits_{i=1}^n X_i^2 -2 \\overline{X}\\sum\\limits_{i=1}^n X_{i} + \\sum\\limits_{i=1}^n \\overline{X}^{2})$\n",
"Получаем, что $S^2=\\frac1n\\sum\\limits_{i=1}^n\\left(X_i-\\overline{X}\\right)^2$\n",
"\n",
"**b).** Оценка $\\widehat{\\theta}$ называется несмещенной оценкой параметра $\\theta$ если для любого $\\theta \\in \\Theta$ выполнено $\\mathsf{E}_\\theta \\widehat{\\theta} = \\theta$. Иначе говоря, какое бы ни оказалось истинное значение параметра $\\theta$ рассматривая оценку $\\widehat{\\theta}$ в среднем будем получать именно $\\theta$.\n",
"\n",
"Является ли статистика $S^2$ несмещенной оценкой $\\sigma^2$?\n",
"\n",
"*Подсказка.* Посчитайте математическое ожидание случайной величины $S^2$. Используйте для этого известные вам свойства математического ожидания.\n",
"\n",
"**Доказательство:**\n",
"Так как $X_1, ... X_n$ одинаково распределены, то $\\forall i \\mathsf E X_i = \\mathsf E X_1$. А так как они независимы $\\mathsf E(X_i X_j) = \\mathsf E X_i \\cdot \\mathsf E X_j$. Пользуясь линейностью матожидания\n",
"\n",
"$\\mathsf ES^{2} = \\frac{1}{n}\\sum\\limits_{i=1}^n \\mathsf EX_i^2 - \\mathsf E(\\frac{1}{n}\\sum\\limits_{i=1}^n X_{i})^{2} = \\mathsf E X^{2}_{1} - \\frac{1}{n^2}(\\sum\\limits_{i=1}^n \\mathsf EX_i^2 + 2\\sum\\limits_{1 \\leq i < j \\leq n}^n \\mathsf E(X_{i}X_{j}))=\n",
" \\mathsf E X^{2}_{1} - \\frac{1}{n^2}(\\sum\\limits_{i=1}^n \\mathsf EX_i^2 + 2\\sum\\limits_{1 \\leq i < j \\leq n}^n \\mathsf E(X_{i}) \\mathsf E (X_{j}))\n",
"= \\mathsf E X^{2}_{1} - \\frac{1}{n^{2}}(n \\mathsf EX_1^2 + 2\\frac{n(n-1)}{2} \\mathsf (E X_1)^2)\n",
"= (\\frac{n - 1}{n})(\\mathsf EX_1^2 - (\\mathsf EX_1)^{2}) = (\\frac{n - 1}{n})\\sf DX_1.$\n",
"В итоге статистика $S^2$ не является несмещенной оценкой $\\sigma^2$."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "ZH_7vCIE4Md7"
},
"source": [
" ---\n",
"### Задача 2. \n",
"Пусть $X_1, ..., X_n$ — выборка из распределения $\\mathcal{N}(0, \\sigma^2)$. В качестве оценок $\\sigma^2$ обычно используют $S^2$ или $\\frac{n}{n-1}S^2$. Что можно сказать про их несмещенность?"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "jHlO95TVJGqx"
},
"source": [
"**Ответ:** Оценка $S^2$, то есть просто выборочная дисперсия, является смещенной оценкой для теоретической. А исправленная, то есть $\\frac{n}{n-1} S^2$ является несмещенной. Так как теоритическая дисперсия для нормального распределения это как раз $\\sigma^2$ и по предыдущему пункту $\\mathsf E\\frac{n}{n-1}S^{2} = {\\sf D} X_1 = \\sigma^2$, а это соответствует определению несмещенной оценки. Тогда $S^2$ является смещенной оценкой, так как $\\mathsf E S^{2} \\neq \\sigma^2$."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "JP3jb2n64hgO"
},
"source": [
"**1.** Теперь проверьте это на практике. Для каждой из приведенных выше оценок $\\widehat{\\theta}$ выполните следующие действия.\n",
"\n",
"* Вычислите $k = 500$ независимых оценок $\\widehat{\\theta}_1, ... , \\widehat{\\theta}_k$ по независимым выборкам $(X_1^1, ... , X_n^1), ... , (X_1^k, ... , X_n^k)$, сгенерированным из распределения $\\mathcal{N}(0, \\sigma^2)$. Далее вычислите среднее этих оценок, которое обозначим $\\overline{\\theta}$.\n",
"\n",
"* Визуализируйте полученные значения, построив на **одном** графике точки $(\\widehat{\\theta}_1, $y$), ... , (\\widehat{\\theta}_k, y)$ и среднее оценок $(\\overline{\\theta}, y)$, где $y$ — произвольные различные (например 0, 1, 2) координаты для двух различных типов оценок.\n",
"\n",
"* Повторите действие три раза для $n \\in \\{10, 100, 500\\}$. В итоге получится три графика для различных $n$, на каждом из которых изображено поведение двух типов оценок и их среднее.\n",
"\n",
"Используйте приведенный ниже **шаблон** для визуализации значений.\n",
"\n",
"**Внимание!** Следите за информативностью и наглядностью графиков. Например, пустых пространств должно быть как можно меньше, ничего не должно быть скомкано, вся нужная информация должна быть представлена. Посмотрите также презентацию с разбора задания 1. **Если график чему-то не удовлетворяет, оценка может быть снижена.**\n",
"\n",
"Вместо использования `matplotlib` можно также строить графики с помощью `plotly`."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "FdCCsVL43jva"
},
"source": [
"**Решение:**"
]
},
{
"cell_type": "code",
"execution_count": 1295,
"metadata": {
"id": "8qcnAu0a3jva"
},
"outputs": [
{
"data": {
"image/png": "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krwF9mYRlrnJu3WGPI8slem1eAGSjggjbxQqp0NtSsqnswdaM5AvyL28NbL/jePJrs/JgtRF2zfWxprU5c4+2UsnmZFOs5w69oehthbGLjI7bi/AzHdh8R6zaeB66Zi9SdkOwjFbQmRm5ZxVGGujKc/KOhg5S+ICaNwp9agzbbbQqEjdHD4bTv1lyffcj2Dux9jcJumefBSMPhyCdZDNmKnzXDpuLHkOnTl5JpYF1U1SBuW0XmlR8SblHY5nZCPOcpWgPyJWn8opdFeipotSt/xREbjlaDue67Ut3oi0NXZVLFyWC8MVs4nmPrOSzIfR86GywVh8jA/Z+MUSXzIn4sJypazcoV6n5Y/Amktl1dniXZDPSz0ZOc+kqdJr94Y2SzviVMzKvwbUzzTi0jOWS2O9zNo9K55vQXU9iVtIuovMlKMZONhDvTi6/m6F5JtCRGHaNCsJM0lLdUqejT968A64P+2daborJJeXxeFwuHGuRhpOFB7MeTuBOLlK0XblZz8qB5hnra07vulZZeYXboaLL36gk3FCkbVa/O43/oi3vOUtrFu39Hk/7Vnww/+xm6uuuor08e/Fq1YPLdKrn0hnYQH/KZ895uk94dny7GMX18R5Bw8zdREA262bWX+i1e2V2pYjjW8l3ArUT5O/lbBdESVHuN9NpxbD2georI8y7cckztVIw4nCgzlvJwgnl0hSHvJUq1WuvfbaA55ft27diucVRVEU5VA5OXySFEVRFEVRjjMqkhRFURRFUQagIklRFEVRFGUAKpIURVEURVEGoCJJURRFURRlACqSFEVRFEVRBqAiSVEURVEUZQAqkhRFURRFUQagIklRFEVRFGUAKpIURVEURVEGoCJJURRFURRlACqSFEVRFEVRBqAiSVEURVEUZQAqkhRFURRFUQagIklRFEVRFGUAKpIURVEURVEGoCJJURRFURRlACqSFEVRFEVRBqAiSVEURVEUZQAqkhRFURRFUQagIklRFEVRFGUAKpIURVEURVEGoCJJURRFURRlACqSFEVRFEVRBqAiSVEURVEUZQAqkhRFURRFUQagIklRFEVRFGUAKpIURVEURVEGoCJJURRFURRlACqSFEVRFEVRBqAiSVEURVEUZQAqkhRFURRFUQagIklRFEVRFGUAKpIURVEURVEGoCJJURRFURRlACqSFEVRFEVRBqAiSVEURVEUZQAqkhRFURRFUQagIklRFEVRFGUAKpIURVEURVEGoCJJURRFURRlACqSFEVRFEVRBqAiSVEURVEUZQAqkhRFURRFUQagIklRFEVRFGUAKpIURVEURVEGoCJJURRFURRlACqSFEVRFEVRBqAiSVEURVEUZQAqkhRFURRFUQagIklRFEVRFGUAKpIURVEURVEGoCJJURRFURRlACqSFEVRFEVRBqAiSVEURVEUZQAqkhRFURRFUQbgPtAJUBRFUZSjIc9z9u3bx+zsLFmWPWDpcF2X22677QG7/0ONQy3vSqXCxo0b8Tzv8O9xJAlTFEVRlBOF++67D8uy2Lx5M57nYVnWA5KORqPB0NDQA3LvhyKHUt5FUTA9Pc19993Hli1bDvseOt2mKIqinNQ0Gg1OPfVUfN9/wASScmJiWRaTk5O02+0jul5FkqIoinLSY9vanSmDORrhrLVKURRFURRlACqSFEVRFEVRBqAiSVEURVFOMn74wx/yxCc+kU6ns+r3yvOcX/mVX+HGG29c1Xu8+tWvJgxD/uf//J8URbFq9zocVCQpiqIoygnO+973Pt7whjd0v1999dW86EUvIgiCo477gx/8IL/1W7/FIx/5SB7+8Iff77xt27ziFa/gmmuuIc/z+52/9tpr+da3vnW/41/+8pd57nOfyyWXXMIFF1zAU5/6VF73utexuLi4JFxRFLzlLW/hpptu4qqrruLGG2/kXe961/3ii6KI17/+9fzCL/wCj3jEI3jGM57BBz7wgVUViiqSFEVRlIc8aZ4y05rhzpk7uX3f7dw5cyczrRnSPH2gkwbAl770JZ7ylKcAYkW69dZbeeYzn3lM4k6ShKc97Wk897nPPWCYJz3pSSwsLPDVr34VgFarxd/+7d+Spr3ymZmZ4WMf+xgA//3f/80rXvEKfv7nf55PfvKTXH/99bztbW+jXq8Tx/GSuN/97nfzzW9+k09+8pM85znP4ROf+ARf+MIXeP/7378k3K233srw8DDvfve7+dd//Vde+9rX8qlPfWqgoDpW6D5JiqIoykOaTtph29w28iKn4lWouBXSPGVvYy/TzWk2jW4icI/eYjOI3/u932PLli1MTU3xyU9+kizLePKTn8xb3/pWqtUqAHfccQc7d+7k8Y9/PACf+9znuOSSS6jX6914PvOZz/DHf/zH/O3f/i1/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QL1e54ILLmDdunXU63W+853v8MADD/D6179+Sfl86KGHuPzyyznzzDN55zvfuSDYGhgYwLKsJaV7IBokKaWUOmr1ZHqYqE/ghV7Xwdte6GEaJgW38JTn7cc//jEnnngi69evX/D5pZdeyvXXX89dd93V9S23Q/WZz3yGb3/72+1/v/KVrwRkwspXv/rVAOzcuZNf/epXXH/99QeV5nOe8xz+4R/+gfe9732MjY2Rz+c57rjjuP7667n00kuXlM/vfe97jI+Ps2XLln1m/77tttv2OU7LwVjuqb+3bt26EXh006ZNyzIT6HLZunUrmzdvPtzZUCtMz/NR4EUvYm5ujp6tWw93TtQKO9j7+b777uPUU09d8nYWz5NkGRZhHNL0m5iGuaLzJB3I2972Nk455ZSu3Vk33HADDz30EH/913/9lOTlox/9KJ7nrch8RLVajUJhZYPQA10jrVaLe+65B+C4zZs3b+tcpm+3KaWUOqpl7Awb+zcyUhwhiAJqXo0gChgpjrCxf+NhCZAAzjzzzHarzmJXXnklJ5988lP2221DQ0P84R/+4Ypv6+lGu9uUUkod9WzTpjfbS2+293Bnpe1AEylms1ne9ra3PSX5ME2TN7/5zU/Jtp5utCVJKaWUUqoLDZKUUkoppbrQIEkppZRSqgsNkpRSSimlutAgSSmllFKqCw2SlFJKKaW60CBJKaWUUqoLDZKUUkqpI8Rjjz3Geeedx6ZNm/jZz352uLPzjKeTSSqllFKHSbPZ5HOf+xy33nore/bsIZvNsmHDBi677LJ9fgh29+7dXHHFFZx++ukcd9xxXH311Xz+85/nnHPOWbDeP/7jP/Kd73yHBx98kCAIOOmkk3jLW97Ci170oqdwz54ZNEhSSimlogD8OfCmIA7AsMHtB6cHzJWrKj/84Q9z++238773vY9yuUytVuPee+9l165dC9YbHx/niiuu4Nxzz+Xaa6/Ftm36+vp4y1vewpe//GU2bdrUXvcXv/gFF198Me9973spFot861vf4q1vfStf/epX9wmo1IFpkKSUUuroFragvh3iCMwsWFkJmlpj4E1AfgNYK/P7bVu2bOHd7343F110UfuzU045ZcE6MzMzvPGNb+T888/nfe97H4ZhAHDVVVfR39/PVVddxVe/+lVOPPFEAK6//voF33/Xu97Fz372M7Zs2aJB0iHS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UkqpLjRIUkoppZTqQoMkpZRSSqkuNEhSSimllOpCgySllFJKqS40SFJKKaWU6kKDJKWUUkqpLjRIUkoppZTqQoMkpZRSSqkuNEhSSimllOpCgySllFJKqS40SFJKKaWU6kKDJKWUUkqpLuzDnQGllFLqyZqdnWV0dBTf9w93VvbLtm3uu+++w52Nw+Zw7X+hUGD9+vWY5qG3C2mQpJRS6og2OzvL3r17WbduHblcDsMwDneWuqrVahQKhcOdjcPmcOx/FEXs3LmT8fFxhoeHD/n72t2mlFLqiDY6Osq6devI5/NP2wBJHR6maTIyMsLMzMzSvr/M+VFKKaWeUr7vk8vlDnc21NOU4zgEQbCk72qQpJRS6oinLUhqf57MtaFBklJKKaVUFxokKaWUUkp1oUGSUkopdYS56667eNGLXkSr1VrxbUVRxCte8Qq2bNmyott4xzveQblc5k/+5E+I43jFtnUoNEhSSil11AuigKnGFI9MPcID4w/wyNQjTDWmCKKlDfhdbp/85Cd5z3ve0/73ddddx5VXXkkmk3nSaX/2s5/lt37rt3j2s5/N6aefvs9y0zS5+uqruf7664miaJ/lN9xwA7/4xS/2+fy2227jda97Heeeey5nnnkml156Ke9+97upVqsL1ovjmPe///3cfvvtfPSjH2XLli1ce+21+6RXqVT4oz/6I37zN3+TM844g4suuohPf/rTKxooapCklFLqqNYKWmyb2sZYbQzbtClmitimzVhtjG1T22gFK99a80R++MMfctFFFwHSinTvvfdy2WWXLUvavu9zySWX8LrXvW6/61x44YXMzc3xk5/8BIBGo8GXvvSlBW+NTU1N8ZWvfAWA//iP/+Dqq6/mN37jN7jpppu4+eabee9730uxWMTzvAVpf+xjH+PnP/85N910E6997Wv52te+xve//30+9alPLVjv3nvvpaenh4997GN897vf5b3vfS/f+MY3ugZUy0Unk1RKKXXUCqKA7TPbsS0b13Lbn6fBkhd6bJ/Zzsb+jdjm8leZv/d7v8dxxx3H8PAwN910E2EY8uIXv5gPfOAD7WkNHnroIXbv3s0LX/hCAG655RbOPfdcisViO51vfetbfOhDH+JLX/oSf/7nf862bds46aST+MhHPsJpp512wDy8/e1vb6exP7Ztc8EFF3DLLbdw4YUXYlkWrVaL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\n",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"k = 500\n",
"sigma = 1\n",
"n_list = [10, 100, 500]\n",
"\n",
"# Вначале:\n",
"plt.figure(figsize=(10, 12))\n",
"\n",
"for j, n in enumerate(n_list):\n",
" teta = np.array([])\n",
" teta_disp = np.array([])\n",
" for i in range(k):\n",
" sample = np.array(sps.norm(loc=0, scale=sigma).rvs(n))\n",
"# sample minus average\n",
" sample_min_av = sample - sample.mean()\n",
"# sample minus average in square\n",
" sample_min_av_sq = sample_min_av * sample_min_av\n",
"\n",
" teta_n = 1 / (n - 1) * sample_min_av_sq.sum()\n",
" teta_n_disp = 1 / n * sample_min_av_sq.sum()\n",
" teta = np.append(teta, teta_n)\n",
" teta_disp = np.append(teta_disp, teta_n_disp)\n",
" \n",
" #отрисовка\n",
" y = [0, 1]\n",
" plt.subplot(3, 1, j + 1)\n",
" # Для каждой оценки:\n",
" plt.scatter(teta, np.zeros(k) + y[0], \n",
" alpha=0.1, s=100, color='green', label='n/(n-1)*S^2')\n",
" plt.scatter(teta.mean(), y[0], marker='*', s=200, \n",
" color='w', edgecolors='black')\n",
" \n",
" plt.scatter(teta_disp, np.zeros(k) + y[1], \n",
" alpha=0.1, s=100, color='orange', label='S^2')\n",
" plt.scatter(teta_disp.mean(), y[1], marker='*', s=200, \n",
" color='w', edgecolors='black')\n",
" \n",
" plt.title(f'Размер выборки = {n}')\n",
" plt.vlines(1, 0, 1, color='r')\n",
" plt.yticks([])\n",
" plt.legend()\n",
"\n",
"plt.show()\n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Вывод:** На всех трех графиках с разными размерами выборок видно, что несмещенная оценка всегда ближе к истинному значению $\\sigma$, чем смещенная. Зеленая звездочка всегда получается ближе к 1.\n",
"Также заметно, что при увеличении $n$ разброс $\\theta$ уменьшается, да и $\\overline{\\theta}$ все точнее."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "-ZfBwUhe3jvb"
},
"source": [
"**2.** Изучим поведение среднего оценок из первого пункта при росте размера выборки. Постройте график зависимости $\\overline{\\theta}$ от $n$ для двух типов оценок. Для вычисления зависимости нужно один раз сгенерировать выборки из пункта 1 достаточно большого размера (не более 500) и посчитать оценки по подвыборкам, используя функции из `numpy`. Использовать циклы, а так же функции, разворачивающиеся в цикл (например, `np.vectorize`), запрещено. Какие из оценок являются асимптотически несмещёнными, т.е. $\\forall \\theta \\in \\Theta\\colon \\mathsf{E}_\\theta \\widehat{\\theta} \\to \\theta$ при $n\\to +\\infty$?"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "jIBkuOKb3jvb"
},
"source": [
"**Решение:**"
]
},
{
"cell_type": "code",
"execution_count": 1296,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABJ4AAAJZCAYAAADoLv/cAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Il7ecAAAACXBIWXMAAAsTAAALEwEAmpwYAABMjUlEQVR4nO39e5xdVWE3/n8myUwyEANeBrSoDF5Y4C8qEEWrFi8ExfoI3h9jvWF+gI+KFZVqKSBeAC1t8dZHpQ2gWFNrpaCtRQ21T1FbjVGrKGwe+hhULjJYCQIhmSTz/WPPhJlhLmcm2XNmJu/365XXzllnX9Y+56yZsz+z1todAwMDAQAAAIDdbUG7KwAAAADA/CR4AgAAAKARgicAAAAAGiF4AgAAAKARgicAAAAAGrGo3RWYKRs2bFic5MlJbkmyvc3VAQAAAJgPFiZ5WJL1K1as2DL6yT0meEodOl3d7koAAAAAzEO/l+Sbowv3pODpliQ5+OCD09XV1e66TNk111yT5cuXt7saMCdoL9A67QVao61A67QXaN18aC9bt27N9ddfnwzmLqPtScHT9iTp6urK4sWL212XaZmr9YZ20F6gddoLtEZbgdZpL9C6edRexpzWyOTiAAAAADRC8AQAAABAIwRPAAAAADRC8AQAAABAI/akycUBAABgj3TnnXfmtttuS39/f7urwjCLFi3Ktdde2+5qTKizszP77bdfli1bNq3tBU8AAAAwj91555351a9+lQMOOCDd3d3p6Ohod5UYdPfdd2fvvfdudzXGNTAwkM2bN+emm25KkmmFT4baAQAAwDx222235YADDshee+0ldGJKOjo6stdee+WAAw7IbbfdNq19CJ4AAABgHuvv7093d3e7q8Ec1t3dPe1hmoInAAAAmOf0dGJX7MrnR/AEAAAAQCMETwAAAAA0QvAEAAAAzDs/+tGP8qxnPStbtmxp/Fg7duzIC1/4wqxbt67xY01Wj7e97W0ppeSP//iPMzAw0Nb6JIInAAAAYB74sz/7s5x22mk7H5933nk58cQTs3jx4l3e9yc+8Ym88pWvzBOf+MQ8/vGPv9/zCxYsyCmnnJLzzz8/O3bsaGmfr3nNa1pa76qrrsqqVaty5JFH5rDDDssxxxyTd7zjHbnrrrtGrDcwMJAzzjgj3/3ud/OBD3wg69atyznnnHO//VVVlXe+85159rOfnSc84QlZuXJlPvzhDzcW0AmeAAAAgDnv61//elauXJmk7u3005/+NMcff/xu2Xd/f3+OPfbYrFq1atx1nvOc5+S3v/1t/vVf/3Xcda688spcf/31I8rWrVuXn/zkJ2Ou/+///u855ZRT8vSnPz2f+9zn8qUvfSlnnXVWli5dmq1bt45Y99xzz81//Md/5HOf+1xe/vKX59JLL82VV16ZCy64YMR6P/3pT/OABzwg5557bv7pn/4p7373u/OFL3xhzJBqd1jUyF4BAACAeafv7r5svGNjevftTc/ePY0f7zWveU0OOuig7Lfffvnc5z6X7du35+ijj86ZZ56Z7u7unevdcMMNueWWW/J7v/d7SZIvf/nLOfLII7N06dKd61x22WV5z3vek4svvjjvf//7s3Hjxjz2sY/N+973vjzucY+bsB5vfetbd+5jPIsWLcozn/nMfPnLX85znvOcMdd55CMfmQ984AM58sgjc+edd+aP//iP093dnXe+851jrv8v//IvWb58ed7ylreM2MfQeQ758Ic/nG9961tZu3Zt9t9//yTJIYccks997nM54YQTsnTp0px44olJkhe/+MV58YtfvHPbRzziEbn55pvzl3/5l3nf+9434eswHXo8AQAAAJNa++O1OfDDB+aYS4/JgR8+MGuvWTsjx/3KV76Su+++O5/97Gdz/vnn52tf+1ouueSSEet8/etfz9Oe9rTstddeSZL169fnCU94wv32tW3btnz4wx/OWWedlcsuuyzLli3Lqaee2vLwuMk84QlPyPr168d9/nGPe1w+/elP5/rrr891112XJz7xifnQhz6Unp6xQ7yenp5s3LgxP/7xjyc87tve9rZ85Stf2Rk6DXnkIx+Zq666amfoNJ4777wzy5Ytm3Cd6RI8AQAAABPqu7svq7+0Opu3bc6mLZuyedvmrL5idfru7mv82I94xCPyrne9K4961KNy1FFH5dhjj823v/3tEeusW7du5zC7JPnlL395vxAmqSffPuOMM7JixYo8+tGPzpvf/OZs3Lgxt9xyy26p63777Ze+vr77DYMbct111+WEE07IwQcfnEMOOSQ//OEPc/rpp+fXv/71mOu/5jWvyRFHHJGXvexlecYznpE3velN+fSnP53f/OY3u6W+SXLjjTfmkksuyR/8wR/stn0OJ3gCAAAAJrTxjo3pWtg1oqxzYWc23rGx8WMfcsghIx7vt99+I4KaW265Jdddd92I4W333ntvurpG1jeph8MdfPDBI/aVZOf+XvCCF+Twww/P4Ycfnhe84AVTruuSJUt2Hn8sP/vZz3L66afnLW95S5YtW5YPfvCDefazn51bb711zPW7u7vzyU9+MldddVXe/va3Z7/99suFF16YY489Nv/1X/815fqNdvPNN2f16tU5+uij87rXvW6X9zcWczzNQTM9phYAAIA9W+++vdm6fWQvnv7t/endt7fxY3d2do543NHRMWJo3Lp163L44YfnQQ960M6yBz3oQdm0adP99rVgwYIsWHBfH5yOjo4k2bm/Cy+8MNu2bUtSh1RTtWnTpnR2duYBD3jAmM8///nPv1/ZMcccM+l+H/7wh+fhD394XvKSl+TUU0/N8573vPz1X/91zjvvvCnXccgvfvGLvO51r8uRRx6Zc889d+drsbvp8TTHtGtMLQAAAHuunr17sub4Nele1J1li5ele1F31hy/ZlZ0hhg9zC6p51K64YYbpryvAw44IAceeGAOPPDAHHDAAVPe/vrrr8+hhx7aUohz6aWXTnn/SbLPPvukp6dn3OF5rfjZz36WV7/61XnKU56Sc889d0QYt7vp8TSHDB9Tu3nb5iTJ6itWZ+VBK2dFYwcAAGD+WrV8VVYetHJWjcC544478r3vfS/nnHPOiPKjjjoqn/70p3fbcW6++eZs2rQpN998cwYGBnLttdcmSR72sIdl33333bne9773vRx11FG77bgf+9jHcs899+SZz3xmDjjggNxzzz25/PLLc/311+e1r33ttPZ5ww035HWve10OO+ywnHrqqSMCrAc96EFZuHDh7qp+EsHTnDI0pnYodEruG1M7Gxo8AAAA81vP3j2z6vrzG9/4Rh7zmMfk4Q9/+Ijy4447Lueff35+9KMfjXl3u6n66Ec/mn/4h3/Y+fhFL3pRkuS8887LS17ykiTJTTfdlB/+8Ic5//zzd/l4Q5785Cfnb//2b3P66aenr68ve+21Vw466KCcf/75Oe6446a1z3/+53/O7bffnnXr1mXdunUjnrvqqqvu91ruKsHTHNLOMbUAAAAw08YajnbKKafklFNOSTL2MLskWbp0ad7whjdkzZo1+chHPpIkeclLXrIzJBry8Ic/PFVVTVqPD37wg/ngBz84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AAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABohOAJAAAAgEYIngAAAABoxKJ2HLSUclySc5IcnOTnSc6rquqiCdZ/ZJIzkjwnyQFJbkvypSRnVVX1m+ZrDAAAAMBUzXiPp1LKU5JcluSLSZ6Y5CNJLiylvGiizZJ0JzklyfIkb0jy3CRrG60sAAAAANPWjh5Ppya5uqqqswcfXzcYRp2W5PKxNqiq6utJvj6s6L9KKaclubyUsqyqqjsbrC8AAAAA09COOZ6eluRro8quTPLkUkrnFPazb5ItSe7ZTfUCAAAAYDdqR4+nhyb51aiyW5N0JnlIklsm20Ep5SFJ3pfkwqqqtk3l4Ndcc81UVp9VNmzY0O4qwJyhvUDrtBdojbYCrdNeoHXzvb20ZXLxXVFK2TfJPyf5v0n+aKrbL1++PIsXL97d1Wrchg0bsmLFinZXA+YE7QVap71Aa7QVaJ32Aq2bD+1ly5YtE3byacdQu1uT7D+qbP8k25LcPtGGpZQHJ7kqyW+SHFdV1ZZGaggAAADALmtH8PTtJMeMKjs2yXerquof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\n",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"K = 500\n",
"N = 500\n",
" \n",
"linspace = np.linspace(1, N, N)\n",
"sample = sps.norm(0, 1).rvs(K * N).reshape(K, N)\n",
" \n",
"sample_sq = sample * sample\n",
"# найдем X среднее для выборки размера 1,2,3.., возведем в квадрат\n",
"sample = np.cumsum(sample, axis=1)\n",
"sample /= linspace\n",
"sample_av_sq = sample * sample\n",
"\n",
"# найдем X^2 среднее\n",
"sample_sq_av = np.cumsum(sample_sq, axis=1)\n",
"sample_sq_av /= linspace\n",
"# # получаем набор тет\n",
"teta_disp_n = sample_sq_av - sample_av_sq\n",
"\n",
"# на 0 не будем делить 2 точки проблемы не сделают\n",
"linspace[0] = 2\n",
"teta_n = teta_disp_n * linspace / (linspace - 1)\n",
" \n",
"# усредняем\n",
"teta = teta_n.mean(axis=0)\n",
"teta_disp = teta_disp_n.mean(axis=0)\n",
"\n",
"#отрисовка\n",
"plt.figure(figsize=(20, 10))\n",
"\n",
"plt.scatter(linspace, teta,\n",
" alpha=1, s=20, color='green', label='n/(n-1) * S^2')\n",
"\n",
"plt.scatter(linspace, teta_disp,\n",
" alpha=1, s=20, color='red', label='S^2')\n",
"\n",
"\n",
"plt.xlabel(\"Размер выборки\")\n",
"plt.ylabel(\"$\\Theta$\")\n",
"plt.legend()\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "agviQcZi3jvd"
},
"source": [
"Сделайте вывод о том, что такое свойство несмещенности. Подтверждают ли сделанные эксперименты полученное в теоретических задачах свойство несмещенности (или отсутствие этого свойства) данных оценок? Поясните, почему в лабораторных по физике при оценке погрешности иногда используют $n-1$ в знаменателе, а не $n$."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "md1nb2PX3jvd"
},
"source": [
"**Вывод:** \n",
"Видно, что при достаточно больших $n$ оценки очень близки. $\\overline{\\theta}$ совсем не колеблется в обоих случаях.\n",
"Опираясь на лабораторные работы по физике можно сказать, что несмещенность оценки говорит об отсутствии систематической ошибки. А свойство состоятельности обеспечиввает близость оценки и величины при увеличении числа измерений. Видно, что при увеличении числа измерений обе оценки прибоижаются к реальному значению $\\sigma^2$ они являются состоятельными, но несмещенная оценка делает это быстрее.\n",
"Поэтому в лабах, где нет возможности проводить эксперимент бесконечность раз, используют несмещенную оценку, дабы получить лучше результат.\n",
"Собственно, поэтому часто используется $n-1$ в знаменателе."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"*Замечание.* Проведенные эксперименты позволяют сделать вывод только о поведении среднего значения оценки, но ничего не говорят о том, насколько велик их разброс относительно среднего."
]
},
{
"attachments": {
"a47371.buy12r.1ets.rs.ii.jpg": {
"image/jpeg": "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"
}
},
"cell_type": "markdown",
"metadata": {},
"source": [
" ---\n",
"### Задача 3. \n",
"\n",
"В этой задаче вам нужно будет проанализировать вакансии на сайте hh.ru. Для сбора данных рекомендуется использовать официальное API.\n",
"\n",
""
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**1. Сбор данных**\n",
"\n",
"Соберите данные о вакансии Data Scientist по Москве в одну таблицу и подготовьте их для анализа. Часто в индустрии подготовленные для анализа таблицы называют *витринами*. В ней должны быть:\n",
"- название вакансии,\n",
"- работодатель,\n",
"- зарплатная вилка,\n",
"- станция метро,\n",
"- ссылка на вакансию,\n",
"- опыт,\n",
"- требуемые навыки,\n",
"- что-то еще по вашему желанию.\n",
"\n",
"Креативность приветствуется. При работе с данными о заработной плате обратите внимание на валюту и gross/net. \n",
"\n",
"**При работе с API не забывайте делать паузы между запросами, чтобы не задудосить сервер HeadHunter.**\n",
"\n",
"Пример запроса к API:"
]
},
{
"cell_type": "code",
"execution_count": 1297,
"metadata": {},
"outputs": [],
"source": [
"# пример\n",
"URL = 'https://api.hh.ru/vacancies'\n",
"\n",
"params = {\n",
" 'text': \"Повар\",\n",
" 'area': 1,\n",
" 'page': 0,\n",
" 'per_page': 10\n",
"}\n",
"\n",
"req = requests.get(URL, params)\n",
"data = json.loads(req.content.decode())"
]
},
{
"cell_type": "code",
"execution_count": 1298,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'items': [{'id': '44167231',\n",
" 'premium': False,\n",
" 'name': 'Бренд Шеф-повар',\n",
" 'department': None,\n",
" 'has_test': False,\n",
" 'response_letter_required': False,\n",
" 'area': {'id': '1', 'name': 'Москва', 'url': 'https://api.hh.ru/areas/1'},\n",
" 'salary': {'from': 350000, 'to': None, 'currency': 'RUR', 'gross': False},\n",
" 'type': {'id': 'open', 'name': 'Открытая'},\n",
" 'address': None,\n",
" 'response_url': None,\n",
" 'sort_point_distance': None,\n",
" 'published_at': '2021-04-25T15:43:45+0300',\n",
" 'created_at': '2021-04-25T15:43:45+0300',\n",
" 'archived': False,\n",
" 'apply_alternate_url': 'https://hh.ru/applicant/vacancy_response?vacancyId=44167231',\n",
" 'insider_interview': None,\n",
" 'url': 'https://api.hh.ru/vacancies/44167231?host=hh.ru',\n",
" 'alternate_url': 'https://hh.ru/vacancy/44167231',\n",
" 'relations': [],\n",
" 'employer': {'id': '2722950',\n",
" 'name': 'Фуд-холл Гоголь-Моголь',\n",
" 'url': 'https://api.hh.ru/employers/2722950',\n",
" 'alternate_url': 'https://hh.ru/employer/2722950',\n",
" 'logo_urls': None,\n",
" 'vacancies_url': 'https://api.hh.ru/vacancies?employer_id=2722950',\n",
" 'trusted': True},\n",
" 'snippet': {'requirement': 'Продолжительный (не менее 3х лет на одном месте) опыт работы в известных ресторанах на должности Шефа/Бренд-шефа обязателен. ',\n",
" 'responsibility': 'Разработка меню разных направлений а-ля карт, кулинария, гриль, паназия.'},\n",
" 'contacts': None,\n",
" 'schedule': {'id': 'fullDay', 'name': 'Полный день'},\n",
" 'working_days': [],\n",
" 'working_time_intervals': [],\n",
" 'working_time_modes': [],\n",
" 'accept_temporary': False},\n",
" {'id': '43428486',\n",
" 'premium': False,\n",
" 'name': 'Повар универсал в ресторан премиум класса',\n",
" 'department': None,\n",
" 'has_test': False,\n",
" 'response_letter_required': False,\n",
" 'area': {'id': '1', 'name': 'Москва', 'url': 'https://api.hh.ru/areas/1'},\n",
" 'salary': {'from': 100000, 'to': None, 'currency': 'RUR', 'gross': False},\n",
" 'type': {'id': 'open', 'name': 'Открытая'},\n",
" 'address': {'city': 'Москва',\n",
" 'street': 'Ружейный переулок',\n",
" 'building': '6с2',\n",
" 'description': None,\n",
" 'lat': 55.743786,\n",
" 'lng': 37.580921,\n",
" 'raw': 'Москва, Ружейный переулок, 6с2',\n",
" 'metro': {'station_name': 'Смоленская',\n",
" 'line_name': 'Арбатско-Покровская',\n",
" 'station_id': '3.131',\n",
" 'line_id': '3',\n",
" 'lat': 55.747713,\n",
" 'lng': 37.583802},\n",
" 'metro_stations': [{'station_name': 'Смоленская',\n",
" 'line_name': 'Арбатско-Покровская',\n",
" 'station_id': '3.131',\n",
" 'line_id': '3',\n",
" 'lat': 55.747713,\n",
" 'lng': 37.583802},\n",
" {'station_name': 'Смоленская',\n",
" 'line_name': 'Филевская',\n",
" 'station_id': '4.132',\n",
" 'line_id': '4',\n",
" 'lat': 55.749083,\n",
" 'lng': 37.582173}],\n",
" 'id': '5502923'},\n",
" 'response_url': None,\n",
" 'sort_point_distance': None,\n",
" 'published_at': '2021-04-25T14:58:46+0300',\n",
" 'created_at': '2021-04-25T14:58:46+0300',\n",
" 'archived': False,\n",
" 'apply_alternate_url': 'https://hh.ru/applicant/vacancy_response?vacancyId=43428486',\n",
" 'insider_interview': None,\n",
" 'url': 'https://api.hh.ru/vacancies/43428486?host=hh.ru',\n",
" 'alternate_url': 'https://hh.ru/vacancy/43428486',\n",
" 'relations': [],\n",
" 'employer': {'id': '2841043',\n",
" 'name': 'Рико',\n",
" 'url': 'https://api.hh.ru/employers/2841043',\n",
" 'alternate_url': 'https://hh.ru/employer/2841043',\n",
" 'logo_urls': {'90': 'https://hhcdn.ru/employer-logo/2221831.jpeg',\n",
" '240': 'https://hhcdn.ru/employer-logo/2221832.jpeg',\n",
" 'original': 'https://hhcdn.ru/employer-logo-original/444966.jpg'},\n",
" 'vacancies_url': 'https://api.hh.ru/vacancies?employer_id=2841043',\n",
" 'trusted': True},\n",
" 'snippet': {'requirement': 'Аккуратность, чистоплотность. Трудолюбие. Обучаемость. Умение работать в команде. Вежливость, грамотная речь.',\n",
" 'responsibility': 'Работа в холодном цеху. Работа в горячем цеху. Выпечка хлеба и десертов. Приемка продуктов по качеству и количеству. Инвентаризация. '},\n",
" 'contacts': None,\n",
" 'schedule': {'id': 'fullDay', 'name': 'Полный день'},\n",
" 'working_days': [],\n",
" 'working_time_intervals': [],\n",
" 'working_time_modes': [],\n",
" 'accept_temporary': False},\n",
" {'id': '43970396',\n",
" 'premium': False,\n",
" 'name': 'Повар в ресторан Премиум класса',\n",
" 'department': None,\n",
" 'has_test': False,\n",
" 'response_letter_required': False,\n",
" 'area': {'id': '1', 'name': 'Москва', 'url': 'https://api.hh.ru/areas/1'},\n",
" 'salary': {'from': 55000, 'to': 80000, 'currency': 'RUR', 'gross': False},\n",
" 'type': {'id': 'open', 'name': 'Открытая'},\n",
" 'address': {'city': 'Москва',\n",
" 'street': 'Трёхпрудный переулок',\n",
" 'building': '15',\n",
" 'description': None,\n",
" 'lat': 55.766081,\n",
" 'lng': 37.595591,\n",
" 'raw': 'Москва, Трёхпрудный переулок, 15',\n",
" 'metro': None,\n",
" 'metro_stations': [],\n",
" 'id': '5441283'},\n",
" 'response_url': None,\n",
" 'sort_point_distance': None,\n",
" 'published_at': '2021-04-23T19:37:31+0300',\n",
" 'created_at': '2021-04-23T19:37:31+0300',\n",
" 'archived': False,\n",
" 'apply_alternate_url': 'https://hh.ru/applicant/vacancy_response?vacancyId=43970396',\n",
" 'insider_interview': None,\n",
" 'url': 'https://api.hh.ru/vacancies/43970396?host=hh.ru',\n",
" 'alternate_url': 'https://hh.ru/vacancy/43970396',\n",
" 'relations': [],\n",
" 'employer': {'id': '5284457',\n",
" 'name': 'Butler',\n",
" 'url': 'https://api.hh.ru/employers/5284457',\n",
" 'alternate_url': 'https://hh.ru/employer/5284457',\n",
" 'logo_urls': {'90': 'https://hhcdn.ru/employer-logo/3755815.jpeg',\n",
" '240': 'https://hhcdn.ru/employer-logo/3755816.jpeg',\n",
" 'original': 'https://hhcdn.ru/employer-logo-original/828733.jpg'},\n",
" 'vacancies_url': 'https://api.hh.ru/vacancies?employer_id=5284457',\n",
" 'trusted': True},\n",
" 'snippet': {'requirement': 'Опыт работы в ресторанах Премиум класса от 4-х лет (Итальянская, Средиземноморская, Европейская кухня). Ответственность, профессиональный подход к работе. ',\n",
" 'responsibility': 'Приготовление блюд, отдача в соответствии с технологическими картами. Контроль качества используемых продуктов. Контроль за свежестью, кондицией продуктов и соответствие их...'},\n",
" 'contacts': None,\n",
" 'schedule': {'id': 'fullDay', 'name': 'Полный день'},\n",
" 'working_days': [],\n",
" 'working_time_intervals': [],\n",
" 'working_time_modes': [],\n",
" 'accept_temporary': False},\n",
" {'id': '43821452',\n",
" 'premium': False,\n",
" 'name': 'Повар-универсал',\n",
" 'department': None,\n",
" 'has_test': False,\n",
" 'response_letter_required': False,\n",
" 'area': {'id': '1', 'name': 'Москва', 'url': 'https://api.hh.ru/areas/1'},\n",
" 'salary': {'from': 70000, 'to': None, 'currency': 'RUR', 'gross': False},\n",
" 'type': {'id': 'open', 'name': 'Открытая'},\n",
" 'address': None,\n",
" 'response_url': None,\n",
" 'sort_point_distance': None,\n",
" 'published_at': '2021-04-24T18:30:59+0300',\n",
" 'created_at': '2021-04-24T18:30:59+0300',\n",
" 'archived': False,\n",
" 'apply_alternate_url': 'https://hh.ru/applicant/vacancy_response?vacancyId=43821452',\n",
" 'insider_interview': None,\n",
" 'url': 'https://api.hh.ru/vacancies/43821452?host=hh.ru',\n",
" 'alternate_url': 'https://hh.ru/vacancy/43821452',\n",
" 'relations': [],\n",
" 'employer': {'id': '4896197',\n",
" 'name': 'Под небом',\n",
" 'url': 'https://api.hh.ru/employers/4896197',\n",
" 'alternate_url': 'https://hh.ru/employer/4896197',\n",
" 'logo_urls': {'original': 'https://hhcdn.ru/employer-logo-original/773301.png',\n",
" '90': 'https://hhcdn.ru/employer-logo/3534095.png',\n",
" '240': 'https://hhcdn.ru/employer-logo/3534096.png'},\n",
" 'vacancies_url': 'https://api.hh.ru/vacancies?employer_id=4896197',\n",
" 'trusted': True},\n",
" 'snippet': {'requirement': 'Опыт работы поваром. - Мед. книжка. - Аккуратность, ответственность.',\n",
" 'responsibility': 'Приготовление блюд. - Заготовки. - Поддержание порядка на рабочем месте.'},\n",
" 'contacts': None,\n",
" 'schedule': {'id': 'shift', 'name': 'Сменный график'},\n",
" 'working_days': [],\n",
" 'working_time_intervals': [],\n",
" 'working_time_modes': [],\n",
" 'accept_temporary': True},\n",
" {'id': '44168751',\n",
" 'premium': True,\n",
" 'name': 'Су-шеф, Шеф-повар',\n",
" 'department': None,\n",
" 'has_test': False,\n",
" 'response_letter_required': False,\n",
" 'area': {'id': '1', 'name': 'Москва', 'url': 'https://api.hh.ru/areas/1'},\n",
" 'salary': {'from': 60000, 'to': 80000, 'currency': 'RUR', 'gross': False},\n",
" 'type': {'id': 'open', 'name': 'Открытая'},\n",
" 'address': {'city': 'Москва',\n",
" 'street': 'Мосфильмовская улица',\n",
" 'building': '88к2с5',\n",
" 'description': None,\n",
" 'lat': 55.7049,\n",
" 'lng': 37.492105,\n",
" 'raw': 'Москва, Мосфильмовская улица, 88к2с5',\n",
" 'metro': None,\n",
" 'metro_stations': [],\n",
" 'id': '5664083'},\n",
" 'response_url': None,\n",
" 'sort_point_distance': None,\n",
" 'published_at': '2021-04-25T21:11:49+0300',\n",
" 'created_at': '2021-04-25T21:11:49+0300',\n",
" 'archived': False,\n",
" 'apply_alternate_url': 'https://hh.ru/applicant/vacancy_response?vacancyId=44168751',\n",
" 'insider_interview': None,\n",
" 'url': 'https://api.hh.ru/vacancies/44168751?host=hh.ru',\n",
" 'alternate_url': 'https://hh.ru/vacancy/44168751',\n",
" 'relations': [],\n",
" 'employer': {'id': '3739477',\n",
" 'name': 'I Do The Kitchen',\n",
" 'url': 'https://api.hh.ru/employers/3739477',\n",
" 'alternate_url': 'https://hh.ru/employer/3739477',\n",
" 'logo_urls': {'original': 'https://hhcdn.ru/employer-logo-original/792832.JPG',\n",
" '90': 'https://hhcdn.ru/employer-logo/3612215.jpeg',\n",
" '240': 'https://hhcdn.ru/employer-logo/3612216.jpeg'},\n",
" 'vacancies_url': 'https://api.hh.ru/vacancies?employer_id=3739477',\n",
" 'trusted': True},\n",
" 'snippet': {'requirement': 'СТРОГО С ОПЫТОМ РАБОТЫ НА ДОЛЖНОСТИ СУ-ШЕФА от 1-го года в кафе и ресторанах Москвы. Иметь стиль и...',\n",
" 'responsibility': 'Обеспечение продуктивной и бесперебойной работы кухни. Управление персоналом на смене. Контроль технологии приготовления и качества отдачи блюд. Контроль остатков, списания...'},\n",
" 'contacts': None,\n",
" 'schedule': {'id': 'fullDay', 'name': 'Полный день'},\n",
" 'working_days': [],\n",
" 'working_time_intervals': [],\n",
" 'working_time_modes': [],\n",
" 'accept_temporary': False},\n",
" {'id': '43393079',\n",
" 'premium': False,\n",
" 'name': 'Повар',\n",
" 'department': None,\n",
" 'has_test': False,\n",
" 'response_letter_required': False,\n",
" 'area': {'id': '1', 'name': 'Москва', 'url': 'https://api.hh.ru/areas/1'},\n",
" 'salary': {'from': 110000, 'to': 130000, 'currency': 'RUR', 'gross': True},\n",
" 'type': {'id': 'open', 'name': 'Открытая'},\n",
" 'address': None,\n",
" 'response_url': None,\n",
" 'sort_point_distance': None,\n",
" 'published_at': '2021-04-23T11:01:46+0300',\n",
" 'created_at': '2021-04-23T11:01:46+0300',\n",
" 'archived': False,\n",
" 'apply_alternate_url': 'https://hh.ru/applicant/vacancy_response?vacancyId=43393079',\n",
" 'insider_interview': None,\n",
" 'url': 'https://api.hh.ru/vacancies/43393079?host=hh.ru',\n",
" 'alternate_url': 'https://hh.ru/vacancy/43393079',\n",
" 'relations': [],\n",
" 'employer': {'id': '4514579',\n",
" 'name': 'HULAB',\n",
" 'url': 'https://api.hh.ru/employers/4514579',\n",
" 'alternate_url': 'https://hh.ru/employer/4514579',\n",
" 'logo_urls': {'90': 'https://hhcdn.ru/employer-logo/3384457.jpeg',\n",
" '240': 'https://hhcdn.ru/employer-logo/3384458.jpeg',\n",
" 'original': 'https://hhcdn.ru/employer-logo-original/735870.jpeg'},\n",
" 'vacancies_url': 'https://api.hh.ru/vacancies?employer_id=4514579',\n",
" 'trusted': True},\n",
" 'snippet': {'requirement': 'Знание европейской , кавказской , итальянской кухни . Знание детского меню.',\n",
" 'responsibility': 'Необходимо уметь приготовить вкусную домашнюю еду (чтобы повар мог приготовить вкусные шашлыки на мангале, испечь пирожки и тд).'},\n",
" 'contacts': None,\n",
" 'schedule': {'id': 'fullDay', 'name': 'Полный день'},\n",
" 'working_days': [],\n",
" 'working_time_intervals': [],\n",
" 'working_time_modes': [],\n",
" 'accept_temporary': False},\n",
" {'id': '43685445',\n",
" 'premium': False,\n",
" 'name': 'Шеф-повар',\n",
" 'department': None,\n",
" 'has_test': False,\n",
" 'response_letter_required': False,\n",
" 'area': {'id': '1', 'name': 'Москва', 'url': 'https://api.hh.ru/areas/1'},\n",
" 'salary': {'from': 120000, 'to': None, 'currency': 'RUR', 'gross': False},\n",
" 'type': {'id': 'open', 'name': 'Открытая'},\n",
" 'address': {'city': 'Камчатский край',\n",
" 'street': None,\n",
" 'building': None,\n",
" 'description': None,\n",
" 'lat': 61.350179,\n",
" 'lng': 169.782981,\n",
" 'raw': 'Камчатский край',\n",
" 'metro': None,\n",
" 'metro_stations': [],\n",
" 'id': '3981983'},\n",
" 'response_url': None,\n",
" 'sort_point_distance': None,\n",
" 'published_at': '2021-04-25T13:12:34+0300',\n",
" 'created_at': '2021-04-25T13:12:34+0300',\n",
" 'archived': False,\n",
" 'apply_alternate_url': 'https://hh.ru/applicant/vacancy_response?vacancyId=43685445',\n",
" 'insider_interview': None,\n",
" 'url': 'https://api.hh.ru/vacancies/43685445?host=hh.ru',\n",
" 'alternate_url': 'https://hh.ru/vacancy/43685445',\n",
" 'relations': [],\n",
" 'employer': {'id': '4518101',\n",
" 'name': 'Архитектурно-строительная компания FANTALIS',\n",
" 'url': 'https://api.hh.ru/employers/4518101',\n",
" 'alternate_url': 'https://hh.ru/employer/4518101',\n",
" 'logo_urls': {'90': 'https://hhcdn.ru/employer-logo/3783511.jpeg',\n",
" '240': 'https://hhcdn.ru/employer-logo/3783512.jpeg',\n",
" 'original': 'https://hhcdn.ru/employer-logo-original/835657.jpg'},\n",
" 'vacancies_url': 'https://api.hh.ru/vacancies?employer_id=4518101',\n",
" 'trusted': True},\n",
" 'snippet': {'requirement': 'С покладистым характером и умением работы с большим коллективом поваров до 35 чел. Заинтересованного в долгосрочном сотрудничестве. С опытом работы...',\n",
" 'responsibility': 'Координация деятельности работы кухни. Контроль качества сырья и готовой продукции. Организация рабочего процесса производства, распределение обязанностей и контроль их выполнения. '},\n",
" 'contacts': None,\n",
" 'schedule': {'id': 'flyInFlyOut', 'name': 'Вахтовый метод'},\n",
" 'working_days': [],\n",
" 'working_time_intervals': [],\n",
" 'working_time_modes': [],\n",
" 'accept_temporary': False},\n",
" {'id': '43686573',\n",
" 'premium': False,\n",
" 'name': 'Повар',\n",
" 'department': None,\n",
" 'has_test': False,\n",
" 'response_letter_required': True,\n",
" 'area': {'id': '1', 'name': 'Москва', 'url': 'https://api.hh.ru/areas/1'},\n",
" 'salary': {'from': 200000, 'to': 250000, 'currency': 'RUR', 'gross': False},\n",
" 'type': {'id': 'open', 'name': 'Открытая'},\n",
" 'address': None,\n",
" 'response_url': None,\n",
" 'sort_point_distance': None,\n",
" 'published_at': '2021-04-25T13:31:55+0300',\n",
" 'created_at': '2021-04-25T13:31:55+0300',\n",
" 'archived': False,\n",
" 'apply_alternate_url': 'https://hh.ru/applicant/vacancy_response?vacancyId=43686573',\n",
" 'insider_interview': None,\n",
" 'url': 'https://api.hh.ru/vacancies/43686573?host=hh.ru',\n",
" 'alternate_url': 'https://hh.ru/vacancy/43686573',\n",
" 'relations': [],\n",
" 'employer': {'id': '5333735',\n",
" 'name': 'Яковлева Вероника',\n",
" 'url': 'https://api.hh.ru/employers/5333735',\n",
" 'alternate_url': 'https://hh.ru/employer/5333735',\n",
" 'logo_urls': None,\n",
" 'vacancies_url': 'https://api.hh.ru/vacancies?employer_id=5333735',\n",
" 'trusted': False},\n",
" 'snippet': {'requirement': 'База поставщиков продуктов. Уверенный прошлый опыт. Итальянская и Пан азиатская кухни.',\n",
" 'responsibility': 'Готовить и сервировать блюда, ресторанная подача блюд. Закупка продуктов. Обслуживание семейных мероприятий ( не часто).'},\n",
" 'contacts': None,\n",
" 'schedule': {'id': 'flexible', 'name': 'Гибкий график'},\n",
" 'working_days': [],\n",
" 'working_time_intervals': [],\n",
" 'working_time_modes': [],\n",
" 'accept_temporary': False},\n",
" {'id': '43423271',\n",
" 'premium': False,\n",
" 'name': 'Повар-универсал в кафе с завтраками',\n",
" 'department': None,\n",
" 'has_test': False,\n",
" 'response_letter_required': False,\n",
" 'area': {'id': '1', 'name': 'Москва', 'url': 'https://api.hh.ru/areas/1'},\n",
" 'salary': {'from': 50000, 'to': 70000, 'currency': 'RUR', 'gross': False},\n",
" 'type': {'id': 'open', 'name': 'Открытая'},\n",
" 'address': {'city': 'Москва',\n",
" 'street': 'Лубянский проезд',\n",
" 'building': '25с2',\n",
" 'description': None,\n",
" 'lat': 55.754578,\n",
" 'lng': 37.63482,\n",
" 'raw': 'Москва, Лубянский проезд, 25с2',\n",
" 'metro': None,\n",
" 'metro_stations': [],\n",
" 'id': '715797'},\n",
" 'response_url': None,\n",
" 'sort_point_distance': None,\n",
" 'published_at': '2021-04-25T13:09:09+0300',\n",
" 'created_at': '2021-04-25T13:09:09+0300',\n",
" 'archived': False,\n",
" 'apply_alternate_url': 'https://hh.ru/applicant/vacancy_response?vacancyId=43423271',\n",
" 'insider_interview': None,\n",
" 'url': 'https://api.hh.ru/vacancies/43423271?host=hh.ru',\n",
" 'alternate_url': 'https://hh.ru/vacancy/43423271',\n",
" 'relations': [],\n",
" 'employer': {'id': '2375473',\n",
" 'name': 'Белмол',\n",
" 'url': 'https://api.hh.ru/employers/2375473',\n",
" 'alternate_url': 'https://hh.ru/employer/2375473',\n",
" 'logo_urls': {'240': 'https://hhcdn.ru/employer-logo/3419382.jpeg',\n",
" '90': 'https://hhcdn.ru/employer-logo/3419381.jpeg',\n",
" 'original': 'https://hhcdn.ru/employer-logo-original/744605.JPG'},\n",
" 'vacancies_url': 'https://api.hh.ru/vacancies?employer_id=2375473',\n",
" 'trusted': True},\n",
" 'snippet': {'requirement': 'Наличие профильного образования или опыта работы - желательно. Наличие мед.книжки или готовность ее оформить. Аккуратность, чистоплотность, не конфликтность.',\n",
" 'responsibility': 'Приготовление блюд и заготовок согласно технологическим картам. Организация и чистота рабочего места. Участие в инвентаризациях и приеме поставок (но у...'},\n",
" 'contacts': None,\n",
" 'schedule': {'id': 'fullDay', 'name': 'Полный день'},\n",
" 'working_days': [],\n",
" 'working_time_intervals': [],\n",
" 'working_time_modes': [],\n",
" 'accept_temporary': False},\n",
" {'id': '44120403',\n",
" 'premium': False,\n",
" 'name': 'Повар к одной женщине',\n",
" 'department': None,\n",
" 'has_test': False,\n",
" 'response_letter_required': False,\n",
" 'area': {'id': '1', 'name': 'Москва', 'url': 'https://api.hh.ru/areas/1'},\n",
" 'salary': {'from': 90000, 'to': 100000, 'currency': 'RUR', 'gross': False},\n",
" 'type': {'id': 'open', 'name': 'Открытая'},\n",
" 'address': None,\n",
" 'response_url': None,\n",
" 'sort_point_distance': None,\n",
" 'published_at': '2021-04-22T16:11:07+0300',\n",
" 'created_at': '2021-04-22T16:11:07+0300',\n",
" 'archived': False,\n",
" 'apply_alternate_url': 'https://hh.ru/applicant/vacancy_response?vacancyId=44120403',\n",
" 'insider_interview': None,\n",
" 'url': 'https://api.hh.ru/vacancies/44120403?host=hh.ru',\n",
" 'alternate_url': 'https://hh.ru/vacancy/44120403',\n",
" 'relations': [],\n",
" 'employer': {'id': '1175930',\n",
" 'name': 'Адам и Ева и К',\n",
" 'url': 'https://api.hh.ru/employers/1175930',\n",
" 'alternate_url': 'https://hh.ru/employer/1175930',\n",
" 'logo_urls': {'90': 'https://hhcdn.ru/employer-logo/915014.jpeg',\n",
" '240': 'https://hhcdn.ru/employer-logo/915015.jpeg',\n",
" 'original': 'https://hhcdn.ru/employer-logo-original/62311.JPG'},\n",
" 'vacancies_url': 'https://api.hh.ru/vacancies?employer_id=1175930',\n",
" 'trusted': True},\n",
" 'snippet': {'requirement': 'Образование повара.',\n",
" 'responsibility': 'Приготовление домашней (кошерной) еды. Закупка продуктов. Поддержание чистоты на кухне.'},\n",
" 'contacts': None,\n",
" 'schedule': {'id': 'fullDay', 'name': 'Полный день'},\n",
" 'working_days': [],\n",
" 'working_time_intervals': [],\n",
" 'working_time_modes': [],\n",
" 'accept_temporary': False}],\n",
" 'found': 3700,\n",
" 'pages': 200,\n",
" 'per_page': 10,\n",
" 'page': 0,\n",
" 'clusters': None,\n",
" 'arguments': None,\n",
" 'alternate_url': 'https://hh.ru/search/vacancy?area=1&enable_snippets=true&items_on_page=10&text=%D0%9F%D0%BE%D0%B2%D0%B0%D1%80'}"
]
},
"execution_count": 1298,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data"
]
},
{
"cell_type": "code",
"execution_count": 1299,
"metadata": {},
"outputs": [],
"source": [
"# data scientist\n",
"URL = 'https://api.hh.ru/vacancies'\n",
"json_ds = []\n",
"\n",
"for page in range(0, 4):\n",
" params = {\n",
" 'text': \"Data Scientist\",\n",
" 'area': 1,\n",
" 'page': page,\n",
" 'per_page': 100\n",
" }\n",
"\n",
" req = requests.get(URL, params)\n",
" data = json.loads(req.content.decode())\n",
" json_ds += data['items']"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Всппоминаем, какие столбцы нам нужны."
]
},
{
"cell_type": "code",
"execution_count": 1300,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
id
\n",
"
name
\n",
"
employer.name
\n",
"
address.metro.station_name
\n",
"
address.metro.line_name
\n",
"
address.metro.lat
\n",
"
address.metro.lng
\n",
"
url
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
44150000
\n",
"
Стажер data scientist
\n",
"
СИБУР, Группа компаний
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/44150000?host=hh.ru
\n",
"
\n",
"
\n",
"
1
\n",
"
44132320
\n",
"
Аналитик Data Scientist
\n",
"
Стоматорг
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/44132320?host=hh.ru
\n",
"
\n",
"
\n",
"
2
\n",
"
43896076
\n",
"
Data Scientist в области компьютерного зрения
\n",
"
Fair Print & High Store
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/43896076?host=hh.ru
\n",
"
\n",
"
\n",
"
3
\n",
"
43471916
\n",
"
Data Scientist / Quantitative Researcher
\n",
"
Знаменка Капитал
\n",
"
Кропоткинская
\n",
"
Сокольническая
\n",
"
55.745297
\n",
"
37.604217
\n",
"
https://api.hh.ru/vacancies/43471916?host=hh.ru
\n",
"
\n",
"
\n",
"
4
\n",
"
43825932
\n",
"
Junior Data Scientist
\n",
"
Институт прикладных экономических исследований...
\n",
"
Юго-Западная
\n",
"
Сокольническая
\n",
"
55.663146
\n",
"
37.482852
\n",
"
https://api.hh.ru/vacancies/43825932?host=hh.ru
\n",
"
\n",
"
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
\n",
"
\n",
"
322
\n",
"
43582504
\n",
"
IT Recruiter
\n",
"
McKinsey & Company
\n",
"
Белорусская
\n",
"
Замоскворецкая
\n",
"
55.777439
\n",
"
37.582107
\n",
"
https://api.hh.ru/vacancies/43582504?host=hh.ru
\n",
"
\n",
"
\n",
"
323
\n",
"
43513052
\n",
"
Аналитик данных
\n",
"
ЛК Сименс Финанс
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/43513052?host=hh.ru
\n",
"
\n",
"
\n",
"
324
\n",
"
41733915
\n",
"
Client Consultant (market research, FMCG sector)
\n",
"
NielsenIQ
\n",
"
Тушинская
\n",
"
Таганско-Краснопресненская
\n",
"
55.825479
\n",
"
37.437024
\n",
"
https://api.hh.ru/vacancies/41733915?host=hh.ru
\n",
"
\n",
"
\n",
"
325
\n",
"
42916086
\n",
"
Product Manager (Analytics)
\n",
"
Segmento
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/42916086?host=hh.ru
\n",
"
\n",
"
\n",
"
326
\n",
"
42779428
\n",
"
Java Developer (Система управления знаниями и ...
\n",
"
Сбербанк
\n",
"
Кутузовская
\n",
"
Филевская
\n",
"
55.740544
\n",
"
37.534100
\n",
"
https://api.hh.ru/vacancies/42779428?host=hh.ru
\n",
"
\n",
" \n",
"
\n",
"
327 rows × 8 columns
\n",
"
"
],
"text/plain": [
" id name \\\n",
"0 44150000 Стажер data scientist \n",
"1 44132320 Аналитик Data Scientist \n",
"2 43896076 Data Scientist в области компьютерного зрения \n",
"3 43471916 Data Scientist / Quantitative Researcher \n",
"4 43825932 Junior Data Scientist \n",
".. ... ... \n",
"322 43582504 IT Recruiter \n",
"323 43513052 Аналитик данных \n",
"324 41733915 Client Consultant (market research, FMCG sector) \n",
"325 42916086 Product Manager (Analytics) \n",
"326 42779428 Java Developer (Система управления знаниями и ... \n",
"\n",
" employer.name \\\n",
"0 СИБУР, Группа компаний \n",
"1 Стоматорг \n",
"2 Fair Print & High Store \n",
"3 Знаменка Капитал \n",
"4 Институт прикладных экономических исследований... \n",
".. ... \n",
"322 McKinsey & Company \n",
"323 ЛК Сименс Финанс \n",
"324 NielsenIQ \n",
"325 Segmento \n",
"326 Сбербанк \n",
"\n",
" address.metro.station_name address.metro.line_name address.metro.lat \\\n",
"0 NaN NaN NaN \n",
"1 NaN NaN NaN \n",
"2 NaN NaN NaN \n",
"3 Кропоткинская Сокольническая 55.745297 \n",
"4 Юго-Западная Сокольническая 55.663146 \n",
".. ... ... ... \n",
"322 Белорусская Замоскворецкая 55.777439 \n",
"323 NaN NaN NaN \n",
"324 Тушинская Таганско-Краснопресненская 55.825479 \n",
"325 NaN NaN NaN \n",
"326 Кутузовская Филевская 55.740544 \n",
"\n",
" address.metro.lng url \n",
"0 NaN https://api.hh.ru/vacancies/44150000?host=hh.ru \n",
"1 NaN https://api.hh.ru/vacancies/44132320?host=hh.ru \n",
"2 NaN https://api.hh.ru/vacancies/43896076?host=hh.ru \n",
"3 37.604217 https://api.hh.ru/vacancies/43471916?host=hh.ru \n",
"4 37.482852 https://api.hh.ru/vacancies/43825932?host=hh.ru \n",
".. ... ... \n",
"322 37.582107 https://api.hh.ru/vacancies/43582504?host=hh.ru \n",
"323 NaN https://api.hh.ru/vacancies/43513052?host=hh.ru \n",
"324 37.437024 https://api.hh.ru/vacancies/41733915?host=hh.ru \n",
"325 NaN https://api.hh.ru/vacancies/42916086?host=hh.ru \n",
"326 37.534100 https://api.hh.ru/vacancies/42779428?host=hh.ru \n",
"\n",
"[327 rows x 8 columns]"
]
},
"execution_count": 1300,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dataset_ds = pd.json_normalize(json_ds)[['id', 'name', 'employer.name', 'address.metro.station_name',\n",
" 'address.metro.line_name', 'address.metro.lat', 'address.metro.lng', 'url']]\n",
"dataset_ds"
]
},
{
"cell_type": "code",
"execution_count": 1301,
"metadata": {},
"outputs": [],
"source": [
"# обработка массива скиллов\n",
"def skills_parser(skills):\n",
" res = []\n",
" for l in range(len(skills)):\n",
" res.append(skills[l]['name'])\n",
" return res if res != [] else None"
]
},
{
"cell_type": "code",
"execution_count": 1303,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"327 descriptions from 327 got\n"
]
}
],
"source": [
"# добавление описаний и требований\n",
"descriptions_ds = []\n",
"\n",
"success = 0\n",
"for cur_id in dataset_ds['id']:\n",
" cur_url = f'https://api.hh.ru/vacancies/{cur_id}'\n",
" cur_req = requests.get(cur_url)\n",
" if cur_req.status_code == 200:\n",
" success += 1\n",
" else:\n",
" print(\"error code\")\n",
" \n",
" cur_descr = json.loads(cur_req.content.decode())\n",
" descriptions_ds += [{'id' : cur_descr['id'], \n",
" 'skills' : skills_parser(cur_descr['key_skills']),\n",
" 'description' : cur_descr['description'],\n",
" 'experience' : cur_descr['experience'], \n",
" 'salary' : cur_descr['salary']}]\n",
" \n",
"print(\"{} descriptions from {} got\".format(success, len(dataset_ds)))"
]
},
{
"cell_type": "code",
"execution_count": 1304,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
Компания Стоматорг - первая час... NaN between1And3 \n",
"2
Стоимость работ: 150 000 рублей.
Сро... NaN noExperience \n",
"3 Обязанности:
Разрабо... NaN between3And6 \n",
"4
Лаборатории анализа данных и отрасл... NaN between1And3 \n",
".. ... ... ... \n",
"322
Qualifications:
<... NaN between3And6 \n",
"323
ООО ЛК «Сименс Финанс» (финансовое подразде... NaN between3And6 \n",
"324
ABOUT THIS JOB
Segmento – одна из крупнейших российских pr... NaN between3And6 \n",
"326
Ищем разработчика на стартап внутри большой... NaN between1And3 \n",
"\n",
" experience.name salary.from salary.to salary.currency salary.gross \\\n",
"0 Нет опыта NaN NaN NaN NaN \n",
"1 От 1 года до 3 лет 180000.0 250000.0 RUR True \n",
"2 Нет опыта 150000.0 150000.0 RUR False \n",
"3 От 3 до 6 лет 250000.0 NaN RUR True \n",
"4 От 1 года до 3 лет 120000.0 NaN RUR True \n",
".. ... ... ... ... ... \n",
"322 От 3 до 6 лет NaN NaN NaN NaN \n",
"323 От 3 до 6 лет NaN NaN NaN NaN \n",
"324 От 1 года до 3 лет NaN NaN NaN NaN \n",
"325 От 3 до 6 лет NaN NaN NaN NaN \n",
"326 От 1 года до 3 лет NaN NaN NaN NaN \n",
"\n",
" name \\\n",
"0 Стажер data scientist \n",
"1 Аналитик Data Scientist \n",
"2 Data Scientist в области компьютерного зрения \n",
"3 Data Scientist / Quantitative Researcher \n",
"4 Junior Data Scientist \n",
".. ... \n",
"322 IT Recruiter \n",
"323 Аналитик данных \n",
"324 Client Consultant (market research, FMCG sector) \n",
"325 Product Manager (Analytics) \n",
"326 Java Developer (Система управления знаниями и ... \n",
"\n",
" employer.name \\\n",
"0 СИБУР, Группа компаний \n",
"1 Стоматорг \n",
"2 Fair Print & High Store \n",
"3 Знаменка Капитал \n",
"4 Институт прикладных экономических исследований... \n",
".. ... \n",
"322 McKinsey & Company \n",
"323 ЛК Сименс Финанс \n",
"324 NielsenIQ \n",
"325 Segmento \n",
"326 Сбербанк \n",
"\n",
" address.metro.station_name address.metro.line_name address.metro.lat \\\n",
"0 NaN NaN NaN \n",
"1 NaN NaN NaN \n",
"2 NaN NaN NaN \n",
"3 Кропоткинская Сокольническая 55.745297 \n",
"4 Юго-Западная Сокольническая 55.663146 \n",
".. ... ... ... \n",
"322 Белорусская Замоскворецкая 55.777439 \n",
"323 NaN NaN NaN \n",
"324 Тушинская Таганско-Краснопресненская 55.825479 \n",
"325 NaN NaN NaN \n",
"326 Кутузовская Филевская 55.740544 \n",
"\n",
" address.metro.lng url \n",
"0 NaN https://api.hh.ru/vacancies/44150000?host=hh.ru \n",
"1 NaN https://api.hh.ru/vacancies/44132320?host=hh.ru \n",
"2 NaN https://api.hh.ru/vacancies/43896076?host=hh.ru \n",
"3 37.604217 https://api.hh.ru/vacancies/43471916?host=hh.ru \n",
"4 37.482852 https://api.hh.ru/vacancies/43825932?host=hh.ru \n",
".. ... ... \n",
"322 37.582107 https://api.hh.ru/vacancies/43582504?host=hh.ru \n",
"323 NaN https://api.hh.ru/vacancies/43513052?host=hh.ru \n",
"324 37.437024 https://api.hh.ru/vacancies/41733915?host=hh.ru \n",
"325 NaN https://api.hh.ru/vacancies/42916086?host=hh.ru \n",
"326 37.534100 https://api.hh.ru/vacancies/42779428?host=hh.ru \n",
"\n",
"[327 rows x 17 columns]"
]
},
"execution_count": 1304,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dataset_ds_descr = pd.json_normalize(descriptions_ds)\n",
"# объединение с предыдщуей таблицей\n",
"dataset_ds_all = pd.merge(dataset_ds_descr, dataset_ds, how='inner', left_on='id', right_on='id')\n",
"dataset_ds_all"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Конкретно в это месте стоит сказать, что анализировать 300 вакансий не очень разумно, поэтому было решено скачать больше, связанных так или иначе наукой о данных. Data Engineer и Data Analyst.**"
]
},
{
"cell_type": "code",
"execution_count": 1305,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
id
\n",
"
name
\n",
"
employer.name
\n",
"
address.metro.station_name
\n",
"
address.metro.line_name
\n",
"
address.metro.lat
\n",
"
address.metro.lng
\n",
"
url
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
41469811
\n",
"
Data Engineer
\n",
"
Айти-Солюшнс
\n",
"
Алексеевская
\n",
"
Калужско-Рижская
\n",
"
55.807794
\n",
"
37.638699
\n",
"
https://api.hh.ru/vacancies/41469811?host=hh.ru
\n",
"
\n",
"
\n",
"
1
\n",
"
43907208
\n",
"
Junior Data Engineer
\n",
"
Платформа ОФД
\n",
"
Лужники
\n",
"
МЦК
\n",
"
55.720278
\n",
"
37.563056
\n",
"
https://api.hh.ru/vacancies/43907208?host=hh.ru
\n",
"
\n",
"
\n",
"
2
\n",
"
44160662
\n",
"
AI / Machine Learning / Deep Learning Инженер
\n",
"
LuxPM
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/44160662?host=hh.ru
\n",
"
\n",
"
\n",
"
3
\n",
"
43841588
\n",
"
Middle/Senior Data Engineer
\n",
"
App in the Air
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/43841588?host=hh.ru
\n",
"
\n",
"
\n",
"
4
\n",
"
42840765
\n",
"
Data engineer
\n",
"
ДомКлик
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/42840765?host=hh.ru
\n",
"
\n",
"
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
\n",
"
\n",
"
958
\n",
"
43435157
\n",
"
Head of Digital Marketing (US market)
\n",
"
Improvado
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/43435157?host=hh.ru
\n",
"
\n",
"
\n",
"
959
\n",
"
43419607
\n",
"
Старший системный администратор
\n",
"
Инфосистемы Джет
\n",
"
Савеловская
\n",
"
Серпуховско-Тимирязевская
\n",
"
55.794054
\n",
"
37.587163
\n",
"
https://api.hh.ru/vacancies/43419607?host=hh.ru
\n",
"
\n",
"
\n",
"
960
\n",
"
42650487
\n",
"
Node.js разработчик (React, Vue)
\n",
"
DriverPack Solution
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/42650487?host=hh.ru
\n",
"
\n",
"
\n",
"
961
\n",
"
43435894
\n",
"
Digital Marketing Director
\n",
"
Валарм
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/43435894?host=hh.ru
\n",
"
\n",
"
\n",
"
962
\n",
"
43216639
\n",
"
Инженер технической поддержки
\n",
"
СберМаркетинг
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/43216639?host=hh.ru
\n",
"
\n",
" \n",
"
\n",
"
963 rows × 8 columns
\n",
"
"
],
"text/plain": [
" id name \\\n",
"0 41469811 Data Engineer \n",
"1 43907208 Junior Data Engineer \n",
"2 44160662 AI / Machine Learning / Deep Learning Инженер \n",
"3 43841588 Middle/Senior Data Engineer \n",
"4 42840765 Data engineer \n",
".. ... ... \n",
"958 43435157 Head of Digital Marketing (US market) \n",
"959 43419607 Старший системный администратор \n",
"960 42650487 Node.js разработчик (React, Vue) \n",
"961 43435894 Digital Marketing Director \n",
"962 43216639 Инженер технической поддержки \n",
"\n",
" employer.name address.metro.station_name \\\n",
"0 Айти-Солюшнс Алексеевская \n",
"1 Платформа ОФД Лужники \n",
"2 LuxPM NaN \n",
"3 App in the Air NaN \n",
"4 ДомКлик NaN \n",
".. ... ... \n",
"958 Improvado NaN \n",
"959 Инфосистемы Джет Савеловская \n",
"960 DriverPack Solution NaN \n",
"961 Валарм NaN \n",
"962 СберМаркетинг NaN \n",
"\n",
" address.metro.line_name address.metro.lat address.metro.lng \\\n",
"0 Калужско-Рижская 55.807794 37.638699 \n",
"1 МЦК 55.720278 37.563056 \n",
"2 NaN NaN NaN \n",
"3 NaN NaN NaN \n",
"4 NaN NaN NaN \n",
".. ... ... ... \n",
"958 NaN NaN NaN \n",
"959 Серпуховско-Тимирязевская 55.794054 37.587163 \n",
"960 NaN NaN NaN \n",
"961 NaN NaN NaN \n",
"962 NaN NaN NaN \n",
"\n",
" url \n",
"0 https://api.hh.ru/vacancies/41469811?host=hh.ru \n",
"1 https://api.hh.ru/vacancies/43907208?host=hh.ru \n",
"2 https://api.hh.ru/vacancies/44160662?host=hh.ru \n",
"3 https://api.hh.ru/vacancies/43841588?host=hh.ru \n",
"4 https://api.hh.ru/vacancies/42840765?host=hh.ru \n",
".. ... \n",
"958 https://api.hh.ru/vacancies/43435157?host=hh.ru \n",
"959 https://api.hh.ru/vacancies/43419607?host=hh.ru \n",
"960 https://api.hh.ru/vacancies/42650487?host=hh.ru \n",
"961 https://api.hh.ru/vacancies/43435894?host=hh.ru \n",
"962 https://api.hh.ru/vacancies/43216639?host=hh.ru \n",
"\n",
"[963 rows x 8 columns]"
]
},
"execution_count": 1305,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Data Engineer\n",
"URL = 'https://api.hh.ru/vacancies'\n",
"json_de = []\n",
"\n",
"for page in range(0, 10):\n",
" params = {\n",
" 'text': \"Data Engineer\",\n",
" 'area': 1,\n",
" 'page': page,\n",
" 'per_page': 100\n",
" }\n",
"\n",
" req = requests.get(URL, params)\n",
" data = json.loads(req.content.decode())\n",
" json_de += data['items']\n",
"\n",
"dataset_de = pd.json_normalize(json_de)[['id', 'name', 'employer.name', 'address.metro.station_name',\n",
" 'address.metro.line_name', 'address.metro.lat', 'address.metro.lng', 'url']]\n",
"dataset_de"
]
},
{
"cell_type": "code",
"execution_count": 1306,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"963 descriptions from 963 got\n"
]
},
{
"data": {
"text/html": [
"
Компания IT-Solutions приглашает на работу ... between3And6 \n",
"1
Платформа ОФД – крупнейший в Ро... between1And3 \n",
"2
Who we are
We are a... between1And3 \n",
"3
Кто мы?
Приложение... between1And3 \n",
"4
В команду ДомКлик мы очень ждем Data engine... between3And6 \n",
".. ... ... \n",
"958
***Please note, we are looking for ... between3And6 \n",
"959
Компания «Инфосистемы Джет» — одна ... moreThan6 \n",
"960
DriverPack - самый популярный серви... moreThan6 \n",
"961
About Wallarm
Join ... moreThan6 \n",
"962
СберМаркетинг (входит в экосистему Сбер) пр... between1And3 \n",
"\n",
" experience.name salary.from salary.to salary.currency salary.gross \\\n",
"0 От 3 до 6 лет 250000.0 NaN RUR False \n",
"1 От 1 года до 3 лет 100000.0 150000.0 RUR False \n",
"2 От 1 года до 3 лет 250000.0 300000.0 RUR True \n",
"3 От 1 года до 3 лет 2000.0 NaN USD False \n",
"4 От 3 до 6 лет NaN NaN NaN NaN \n",
".. ... ... ... ... ... \n",
"958 От 3 до 6 лет NaN NaN NaN NaN \n",
"959 Более 6 лет NaN NaN NaN NaN \n",
"960 Более 6 лет NaN 300000.0 RUR False \n",
"961 Более 6 лет 180000.0 250000.0 RUR False \n",
"962 От 1 года до 3 лет NaN NaN NaN NaN \n",
"\n",
" salary name \\\n",
"0 NaN Data Engineer \n",
"1 NaN Junior Data Engineer \n",
"2 NaN AI / Machine Learning / Deep Learning Инженер \n",
"3 NaN Middle/Senior Data Engineer \n",
"4 NaN Data engineer \n",
".. ... ... \n",
"958 NaN Head of Digital Marketing (US market) \n",
"959 NaN Старший системный администратор \n",
"960 NaN Node.js разработчик (React, Vue) \n",
"961 NaN Digital Marketing Director \n",
"962 NaN Инженер технической поддержки \n",
"\n",
" employer.name address.metro.station_name \\\n",
"0 Айти-Солюшнс Алексеевская \n",
"1 Платформа ОФД Лужники \n",
"2 LuxPM NaN \n",
"3 App in the Air NaN \n",
"4 ДомКлик NaN \n",
".. ... ... \n",
"958 Improvado NaN \n",
"959 Инфосистемы Джет Савеловская \n",
"960 DriverPack Solution NaN \n",
"961 Валарм NaN \n",
"962 СберМаркетинг NaN \n",
"\n",
" address.metro.line_name address.metro.lat address.metro.lng \\\n",
"0 Калужско-Рижская 55.807794 37.638699 \n",
"1 МЦК 55.720278 37.563056 \n",
"2 NaN NaN NaN \n",
"3 NaN NaN NaN \n",
"4 NaN NaN NaN \n",
".. ... ... ... \n",
"958 NaN NaN NaN \n",
"959 Серпуховско-Тимирязевская 55.794054 37.587163 \n",
"960 NaN NaN NaN \n",
"961 NaN NaN NaN \n",
"962 NaN NaN NaN \n",
"\n",
" url \n",
"0 https://api.hh.ru/vacancies/41469811?host=hh.ru \n",
"1 https://api.hh.ru/vacancies/43907208?host=hh.ru \n",
"2 https://api.hh.ru/vacancies/44160662?host=hh.ru \n",
"3 https://api.hh.ru/vacancies/43841588?host=hh.ru \n",
"4 https://api.hh.ru/vacancies/42840765?host=hh.ru \n",
".. ... \n",
"958 https://api.hh.ru/vacancies/43435157?host=hh.ru \n",
"959 https://api.hh.ru/vacancies/43419607?host=hh.ru \n",
"960 https://api.hh.ru/vacancies/42650487?host=hh.ru \n",
"961 https://api.hh.ru/vacancies/43435894?host=hh.ru \n",
"962 https://api.hh.ru/vacancies/43216639?host=hh.ru \n",
"\n",
"[963 rows x 17 columns]"
]
},
"execution_count": 1306,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# добавление описаний и требований\n",
"descriptions_de = []\n",
"\n",
"success = 0\n",
"for cur_id in dataset_de['id']:\n",
" cur_url = f'https://api.hh.ru/vacancies/{cur_id}'\n",
" cur_req = requests.get(cur_url)\n",
" if cur_req.status_code == 200:\n",
" success += 1\n",
" else:\n",
" print(\"error code\")\n",
" \n",
" cur_descr = json.loads(cur_req.content.decode())\n",
" descriptions_de += [{'id' : cur_descr['id'], \n",
" 'skills' : skills_parser(cur_descr['key_skills']),\n",
" 'description' : cur_descr['description'],\n",
" 'experience' : cur_descr['experience'], \n",
" 'salary' : cur_descr['salary']}]\n",
" \n",
"print(\"{} descriptions from {} got\".format(success, len(dataset_de)))\n",
"\n",
"dataset_de_descr = pd.json_normalize(descriptions_de)\n",
"# объединение с предыдщуей таблицей\n",
"dataset_de_all = pd.merge(dataset_de_descr, dataset_de, how='inner', left_on='id', right_on='id')\n",
"dataset_de_all"
]
},
{
"cell_type": "code",
"execution_count": 1307,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
id
\n",
"
name
\n",
"
employer.name
\n",
"
address.metro.station_name
\n",
"
address.metro.line_name
\n",
"
address.metro.lat
\n",
"
address.metro.lng
\n",
"
url
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
43907208
\n",
"
Junior Data Engineer
\n",
"
Платформа ОФД
\n",
"
Лужники
\n",
"
МЦК
\n",
"
55.720278
\n",
"
37.563056
\n",
"
https://api.hh.ru/vacancies/43907208?host=hh.ru
\n",
"
\n",
"
\n",
"
1
\n",
"
44132320
\n",
"
Аналитик Data Scientist
\n",
"
Стоматорг
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/44132320?host=hh.ru
\n",
"
\n",
"
\n",
"
2
\n",
"
41469811
\n",
"
Data Engineer
\n",
"
Айти-Солюшнс
\n",
"
Алексеевская
\n",
"
Калужско-Рижская
\n",
"
55.807794
\n",
"
37.638699
\n",
"
https://api.hh.ru/vacancies/41469811?host=hh.ru
\n",
"
\n",
"
\n",
"
3
\n",
"
44150000
\n",
"
Стажер data scientist
\n",
"
СИБУР, Группа компаний
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/44150000?host=hh.ru
\n",
"
\n",
"
\n",
"
4
\n",
"
44146175
\n",
"
Дата-аналитик/Data Analyst
\n",
"
Российская академия народного хозяйства и госу...
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/44146175?host=hh.ru
\n",
"
\n",
"
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
\n",
"
\n",
"
1557
\n",
"
43427055
\n",
"
Аналитик отдела ценообразования
\n",
"
My Sky
\n",
"
Белорусская
\n",
"
Замоскворецкая
\n",
"
55.777439
\n",
"
37.582107
\n",
"
https://api.hh.ru/vacancies/43427055?host=hh.ru
\n",
"
\n",
"
\n",
"
1558
\n",
"
42658993
\n",
"
Database administrator/architect
\n",
"
LATOKEN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/42658993?host=hh.ru
\n",
"
\n",
"
\n",
"
1559
\n",
"
43434228
\n",
"
Главный аналитик недвижимости, глава/руководит...
\n",
"
Пульс Продаж Новостроек
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/43434228?host=hh.ru
\n",
"
\n",
"
\n",
"
1560
\n",
"
43216639
\n",
"
Инженер технической поддержки
\n",
"
СберМаркетинг
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/43216639?host=hh.ru
\n",
"
\n",
"
\n",
"
1561
\n",
"
42650460
\n",
"
IT рекрутер
\n",
"
DriverPack Solution
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/42650460?host=hh.ru
\n",
"
\n",
" \n",
"
\n",
"
1562 rows × 8 columns
\n",
"
"
],
"text/plain": [
" id name \\\n",
"0 43907208 Junior Data Engineer \n",
"1 44132320 Аналитик Data Scientist \n",
"2 41469811 Data Engineer \n",
"3 44150000 Стажер data scientist \n",
"4 44146175 Дата-аналитик/Data Analyst \n",
"... ... ... \n",
"1557 43427055 Аналитик отдела ценообразования \n",
"1558 42658993 Database administrator/architect \n",
"1559 43434228 Главный аналитик недвижимости, глава/руководит... \n",
"1560 43216639 Инженер технической поддержки \n",
"1561 42650460 IT рекрутер \n",
"\n",
" employer.name \\\n",
"0 Платформа ОФД \n",
"1 Стоматорг \n",
"2 Айти-Солюшнс \n",
"3 СИБУР, Группа компаний \n",
"4 Российская академия народного хозяйства и госу... \n",
"... ... \n",
"1557 My Sky \n",
"1558 LATOKEN \n",
"1559 Пульс Продаж Новостроек \n",
"1560 СберМаркетинг \n",
"1561 DriverPack Solution \n",
"\n",
" address.metro.station_name address.metro.line_name address.metro.lat \\\n",
"0 Лужники МЦК 55.720278 \n",
"1 NaN NaN NaN \n",
"2 Алексеевская Калужско-Рижская 55.807794 \n",
"3 NaN NaN NaN \n",
"4 NaN NaN NaN \n",
"... ... ... ... \n",
"1557 Белорусская Замоскворецкая 55.777439 \n",
"1558 NaN NaN NaN \n",
"1559 NaN NaN NaN \n",
"1560 NaN NaN NaN \n",
"1561 NaN NaN NaN \n",
"\n",
" address.metro.lng url \n",
"0 37.563056 https://api.hh.ru/vacancies/43907208?host=hh.ru \n",
"1 NaN https://api.hh.ru/vacancies/44132320?host=hh.ru \n",
"2 37.638699 https://api.hh.ru/vacancies/41469811?host=hh.ru \n",
"3 NaN https://api.hh.ru/vacancies/44150000?host=hh.ru \n",
"4 NaN https://api.hh.ru/vacancies/44146175?host=hh.ru \n",
"... ... ... \n",
"1557 37.582107 https://api.hh.ru/vacancies/43427055?host=hh.ru \n",
"1558 NaN https://api.hh.ru/vacancies/42658993?host=hh.ru \n",
"1559 NaN https://api.hh.ru/vacancies/43434228?host=hh.ru \n",
"1560 NaN https://api.hh.ru/vacancies/43216639?host=hh.ru \n",
"1561 NaN https://api.hh.ru/vacancies/42650460?host=hh.ru \n",
"\n",
"[1562 rows x 8 columns]"
]
},
"execution_count": 1307,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Data Analyst\n",
"URL = 'https://api.hh.ru/vacancies'\n",
"json_da = []\n",
"\n",
"for page in range(0, 16):\n",
" params = {\n",
" 'text': \"Data Analyst\",\n",
" 'area': 1,\n",
" 'page': page,\n",
" 'per_page': 100\n",
" }\n",
"\n",
" req = requests.get(URL, params)\n",
" data = json.loads(req.content.decode())\n",
" json_da += data['items']\n",
"\n",
"dataset_da = pd.json_normalize(json_da)[['id', 'name', 'employer.name', 'address.metro.station_name',\n",
" 'address.metro.line_name', 'address.metro.lat', 'address.metro.lng', 'url']]\n",
"dataset_da"
]
},
{
"cell_type": "code",
"execution_count": 1308,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1562 descriptions from 1562 got\n"
]
},
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
id
\n",
"
skills
\n",
"
description
\n",
"
experience.id
\n",
"
experience.name
\n",
"
salary.from
\n",
"
salary.to
\n",
"
salary.currency
\n",
"
salary.gross
\n",
"
salary
\n",
"
name
\n",
"
employer.name
\n",
"
address.metro.station_name
\n",
"
address.metro.line_name
\n",
"
address.metro.lat
\n",
"
address.metro.lng
\n",
"
url
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
43907208
\n",
"
None
\n",
"
<p><em><strong>Платформа ОФД – крупнейший в Ро...
\n",
"
between1And3
\n",
"
От 1 года до 3 лет
\n",
"
100000.0
\n",
"
150000.0
\n",
"
RUR
\n",
"
False
\n",
"
NaN
\n",
"
Junior Data Engineer
\n",
"
Платформа ОФД
\n",
"
Лужники
\n",
"
МЦК
\n",
"
55.720278
\n",
"
37.563056
\n",
"
https://api.hh.ru/vacancies/43907208?host=hh.ru
\n",
"
\n",
"
\n",
"
1
\n",
"
44132320
\n",
"
[Python, MS Visio, Бизнес-анализ, Аналитически...
\n",
"
<p><em><strong>Компания Стоматорг - первая час...
\n",
"
between1And3
\n",
"
От 1 года до 3 лет
\n",
"
180000.0
\n",
"
250000.0
\n",
"
RUR
\n",
"
True
\n",
"
NaN
\n",
"
Аналитик Data Scientist
\n",
"
Стоматорг
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/44132320?host=hh.ru
\n",
"
\n",
"
\n",
"
2
\n",
"
41469811
\n",
"
[SQL, Английский язык, Работа в команде, Работ...
\n",
"
<p>Компания IT-Solutions приглашает на работу ...
\n",
"
between3And6
\n",
"
От 3 до 6 лет
\n",
"
250000.0
\n",
"
NaN
\n",
"
RUR
\n",
"
False
\n",
"
NaN
\n",
"
Data Engineer
\n",
"
Айти-Солюшнс
\n",
"
Алексеевская
\n",
"
Калужско-Рижская
\n",
"
55.807794
\n",
"
37.638699
\n",
"
https://api.hh.ru/vacancies/41469811?host=hh.ru
\n",
"
\n",
"
\n",
"
3
\n",
"
44150000
\n",
"
[Python, SQL, R, machine learning]
\n",
"
<p><strong>О НАС:</strong></p> <ul> <li>Одно и...
\n",
"
noExperience
\n",
"
Нет опыта
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
Стажер data scientist
\n",
"
СИБУР, Группа компаний
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/44150000?host=hh.ru
\n",
"
\n",
"
\n",
"
4
\n",
"
44146175
\n",
"
[Python, SQL, Adobe Photoshop, Аналитические и...
\n",
"
<p>В проект, реализуемый совместно со Счетной ...
\n",
"
between1And3
\n",
"
От 1 года до 3 лет
\n",
"
120000.0
\n",
"
150000.0
\n",
"
RUR
\n",
"
False
\n",
"
NaN
\n",
"
Дата-аналитик/Data Analyst
\n",
"
Российская академия народного хозяйства и госу...
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/44146175?host=hh.ru
\n",
"
\n",
"
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
\n",
"
\n",
"
1557
\n",
"
43427055
\n",
"
[Базы данных, MS Excel, Английский язык]
\n",
"
<p><strong>MySky </strong>– международная инно...
\n",
"
between1And3
\n",
"
От 1 года до 3 лет
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
Аналитик отдела ценообразования
\n",
"
My Sky
\n",
"
Белорусская
\n",
"
Замоскворецкая
\n",
"
55.777439
\n",
"
37.582107
\n",
"
https://api.hh.ru/vacancies/43427055?host=hh.ru
\n",
"
\n",
"
\n",
"
1558
\n",
"
42658993
\n",
"
[Databases, Python, MySQL, SQL, Analytical ski...
\n",
"
<p>LATOKEN’s mission is to <strong>put financi...
\n",
"
noExperience
\n",
"
Нет опыта
\n",
"
200000.0
\n",
"
NaN
\n",
"
RUR
\n",
"
False
\n",
"
NaN
\n",
"
Database administrator/architect
\n",
"
LATOKEN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/42658993?host=hh.ru
\n",
"
\n",
"
\n",
"
1559
\n",
"
43434228
\n",
"
[Аналитические исследования, Мониторинг рынка,...
\n",
"
<p>Аналитический сервис «Пульс Продаж Новостро...
\n",
"
between1And3
\n",
"
От 1 года до 3 лет
\n",
"
100000.0
\n",
"
150000.0
\n",
"
RUR
\n",
"
False
\n",
"
NaN
\n",
"
Главный аналитик недвижимости, глава/руководит...
\n",
"
Пульс Продаж Новостроек
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/43434228?host=hh.ru
\n",
"
\n",
"
\n",
"
1560
\n",
"
43216639
\n",
"
[Active Directory, Разработка инструкций, Техн...
\n",
"
<p>СберМаркетинг (входит в экосистему Сбер) пр...
\n",
"
between1And3
\n",
"
От 1 года до 3 лет
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
Инженер технической поддержки
\n",
"
СберМаркетинг
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/43216639?host=hh.ru
\n",
"
\n",
"
\n",
"
1561
\n",
"
42650460
\n",
"
[Подбор персонала, Адаптация персонала, Активн...
\n",
"
<p>Привет!</p> <p>Я, Артур Кузяков, основатель...
\n",
"
noExperience
\n",
"
Нет опыта
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
IT рекрутер
\n",
"
DriverPack Solution
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
https://api.hh.ru/vacancies/42650460?host=hh.ru
\n",
"
\n",
" \n",
"
\n",
"
1562 rows × 17 columns
\n",
"
"
],
"text/plain": [
" id skills \\\n",
"0 43907208 None \n",
"1 44132320 [Python, MS Visio, Бизнес-анализ, Аналитически... \n",
"2 41469811 [SQL, Английский язык, Работа в команде, Работ... \n",
"3 44150000 [Python, SQL, R, machine learning] \n",
"4 44146175 [Python, SQL, Adobe Photoshop, Аналитические и... \n",
"... ... ... \n",
"1557 43427055 [Базы данных, MS Excel, Английский язык] \n",
"1558 42658993 [Databases, Python, MySQL, SQL, Analytical ski... \n",
"1559 43434228 [Аналитические исследования, Мониторинг рынка,... \n",
"1560 43216639 [Active Directory, Разработка инструкций, Техн... \n",
"1561 42650460 [Подбор персонала, Адаптация персонала, Активн... \n",
"\n",
" description experience.id \\\n",
"0
Платформа ОФД – крупнейший в Ро... between1And3 \n",
"1
Компания Стоматорг - первая час... between1And3 \n",
"2
Компания IT-Solutions приглашает на работу ... between3And6 \n",
"3
О НАС:
Одно и... noExperience \n",
"4
В проект, реализуемый совместно со Счетной ... between1And3 \n",
"... ... ... \n",
"1557
"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# построение heatmap по табличке\n",
"figure = go.Figure(\n",
" data=go.Heatmap(\n",
" x=best_skills_ds,\n",
" y=best_groups_ds,\n",
" z=table_groups_skills_ds,\n",
" zmin=0,\n",
" zmax=20,\n",
" colorscale='Viridis')\n",
")\n",
"\n",
"figure.update_layout(\n",
" title='Heatmap с количеством вакансий (от группы и навыка)',\n",
" xaxis={'title':'Навык'},\n",
" yaxis={'title':'Вакансия'})\n",
"\n",
"figure.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Проблема в том, что очень много вакансий содержит слово data scientist, однако все равно видны некоторые закономерности, у devops ценится работа на linux, навыки работы с git linux у python developer, аналитику нужны математические дисциплины. У data engineer нужен oracle, базы данных, product manager должен знать анлийский.\n",
"QA automation engineer должен владеть java и тд, легче посмотреть самостоятельно."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Ух ты, тут компании из Питера и Минска, нужно их дропнуть."
]
},
{
"cell_type": "code",
"execution_count": 1233,
"metadata": {},
"outputs": [],
"source": [
"dataset_ds_all = dataset_ds_all[dataset_ds_all['address.metro.lng'] > 32]"
]
},
{
"cell_type": "code",
"execution_count": 1351,
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"hovertemplate": "%{hovertext}
"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig = px.scatter_mapbox(\n",
" dataset_ds_all, \n",
" lat='address.metro.lat',\n",
" lon='address.metro.lng',\n",
" hover_name = 'name',\n",
" zoom=10,\n",
" title='Координаты вакансий')\n",
"\n",
"fig.update_layout(mapbox_style = \"open-street-map\")\n",
"fig.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Все вакансии попадают КАД, так и должно быть. На первый взгляд распределены достаточно равномерно, посмотрим чуть позже на график плотности на карте."
]
},
{
"cell_type": "code",
"execution_count": 1352,
"metadata": {},
"outputs": [],
"source": [
"dataset_ds_all['salary.average'] = np.nan\n",
"\n",
"# приводим среднюю зарплату\n",
"for index in dataset_ds_all.index:\n",
" salary_from = dataset_ds_all.loc[index, 'salary.from']\n",
" salary_to = dataset_ds_all.loc[index, 'salary.to']\n",
"\n",
" if salary_from is not None:\n",
" dataset_ds_all.loc[index, 'salary.average'] = salary_from\n",
" \n",
" if salary_to is not None:\n",
" dataset_ds_all.loc[index, 'salary.average'] = salary_to\n",
" \n",
" if (salary_from is not None) & (salary_to is not None):\n",
" dataset_ds_all.loc[index, 'salary.average'] = (salary_from + salary_to) / 2"
]
},
{
"cell_type": "code",
"execution_count": 1353,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
" \n",
" "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
" \n",
" "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"
"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# посмотрим на зарплату на карте\n",
"pio.renderers.default='notebook'\n",
"\n",
"plotly.offline.init_notebook_mode(connected =True)\n",
"px.set_mapbox_access_token(open('token.txt').read())\n",
"\n",
"fig = px.density_mapbox(dataset_ds_all,\n",
" lat = 'address.metro.lat', \n",
" lon = 'address.metro.lng',\n",
" z = 'salary.average', \n",
" title='Плотность зарплаты',\n",
" zoom=10)\n",
"\n",
"fig.show('notebook')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Вот тут уже интереснее, пятна в центре гораздо горяее, значит вакансии, которые ближе к центру, в среднем предлагают выше зарплату, достаточно закономерно, они крупнее и имеют деньги на аренду офисов в центре для удобства сотрудников и платят, соответственно, больше."
]
},
{
"cell_type": "code",
"execution_count": 1354,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# построение heatmap по табличке\n",
"figure = go.Figure(\n",
" data=go.Heatmap(\n",
" x=best_skills_pm,\n",
" y=best_groups_pm,\n",
" z=table_groups_skills_pm,\n",
" zmin=0,\n",
" zmax=30,\n",
" colorscale='Viridis')\n",
")\n",
"\n",
"figure.update_layout(\n",
" title='Heatmap с количеством вакансий (от группы и навыка)',\n",
" xaxis={'title':'Навык'},\n",
" yaxis={'title':'Вакансия'})\n",
"\n",
"figure.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Проблема в том, что очень много вакансий содержит слово product manager, однако все равно видны некоторые закономерности, в product marketing manager ценится маркетинговый анализ и маркетинговые исследования(удивительно!), у ux manager требуется знание ux, также как и у product designer. Все вполне закономерно. Очень много требований у product owner."
]
},
{
"cell_type": "code",
"execution_count": 1393,
"metadata": {},
"outputs": [],
"source": [
"# избавимся от вакансий в Питере, Минске и за Уралом\n",
"dataset_pm_all = dataset_pm_all[(dataset_pm_all['address.metro.lng'] > 32) & (dataset_pm_all['address.metro.lng'] < 40)]"
]
},
{
"cell_type": "code",
"execution_count": 1394,
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"hovertemplate": "%{hovertext}
"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# посмотрим на график заработной платы от навыков\n",
"fig = px.bar(x=best_skills_pm, y=skills_money_pm)\n",
"fig.update_layout(\n",
" title='Зависимость средней зарплаты от навыка',\n",
" xaxis={'title':'Навык'},\n",
" yaxis={'title':'Средняя зарплата с таким навыком'})\n",
"fig.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Вау! График очень даже информативный. Вижно, что ux ценится очень высоко. Также знание бизнес анализа, опят запусков продуктов и развитие продаж выделяются."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Замечание в тему.** Многие из вас наверняка сейчас уже начинают задумываться о работе. Конечно, вы имеете на это полное право. Однако, по нашему опыту работа на 3 курсе отрицательно сказывается на степени усвоения материала. По сути все предметы цикла Data Science у вас еще впереди. Подумайте, наверное, лучше разобраться во всем во время учебы, чем потом что-то где-то нагонять. Более простой вариант — летняя стажировка, но не забудьте отдохнуть, набравшись сил перед непростым 3 курсом ☺."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"---\n",
"### Сложная часть\n",
"\n",
"### Задача 4.\n",
"\n",
"Найдите оценку параметра $\\theta$ методом моментов по выборке размера $n$ из распределения:\n",
"* $U(a, b), \\theta=(a, b)$; \n",
"* $Pois(\\theta)$;\n",
"* $\\mathcal{N}(a, \\sigma^2), \\theta=(a, \\sigma)$."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"В каждом пункте пользуемся методом моментов:\n",
" \n",
"1) Из курса теории вероятностей:\n",
"\n",
"В случае равномерного распределения\n",
"\\begin{cases}\n",
" \\mathsf E_{\\theta} X_1 = \\frac{a+b}{2} = \\overline{X} \\\\\n",
" \\mathsf E_{\\theta} X_1^2 = \\frac{a^2+b^2+ab}{3} = \\overline{X^2}\n",
"\\end{cases}\n",
"\n",
"То есть \n",
"\n",
"\\begin{cases}\n",
" a = 2\\overline{X} - b \\\\\n",
" 4\\overline{X}^2 - 4\\overline{X} b + b^2 +b^2+2 \\overline{X} b - b^2 = 3 \\overline{X^2}\n",
"\\end{cases}\n",
"\n",
"\\begin{cases}\n",
" a = 2\\overline{X} - b \\\\\n",
" 4\\overline{X}^2 - 2\\overline{X} b + b^2 - 3 \\overline{X^2} = 0\n",
"\\end{cases}\n",
"\n",
"Так как $S^2 = \\overline{X^2} - \\overline{X}^2$, и вспоминая, что $b > a$, решая квадаратное уравнение, получаем\n",
"\n",
"\\begin{cases}\n",
" b = \\overline{X} \\pm \\sqrt{\\overline{X}^2-4\\overline{X}^2 + 3\\overline{X^2}} \\\\\n",
" a = \\overline{X} \\mp \\sqrt{\\overline{X}^2-4\\overline{X}^2 + 3\\overline{X^2}}\n",
"\\end{cases}\n",
"\n",
"\\begin{cases}\n",
" b = \\overline{X} + \\sqrt{3S^2} \\\\\n",
" a = \\overline{X} - \\sqrt{3S^2}\n",
"\\end{cases}\n",
"\n",
"---\n",
"2) В случае пуассоновского распределения\n",
"\n",
"$\\mathsf E_{\\theta} X_1 = \\theta = \\overline{X}$, это и будет ответом $\\theta = \\overline{X}$.\n",
"\n",
"---\n",
"3) В случае нормального распределения. Так как $\\sf D X = \\sigma^2 = \\mathsf E X^2 - (\\mathsf E X)^2 = \\mathsf E X^2 - a^2$\n",
"\\begin{cases}\n",
" \\mathsf E_{\\theta} X_1 = a = \\overline{X} \\\\\n",
" \\mathsf E_{\\theta} X_1^2 = a^2 + \\sigma^2 = \\overline{X^2}\n",
"\\end{cases}\n",
"\n",
"В итоге \n",
"\\begin{cases}\n",
" a = \\overline{X} \\\\\n",
" \\sigma^2 = \\overline{X^2} - \\overline{X}^2\n",
"\\end{cases}"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "rA8jNWguSPSM"
},
"source": [
"---\n",
"### Задача 5.\n",
"\n",
"В данной задаче вам предстоит распарсить сайт, который вы выберите.\n",
"\n",
"**1.** Каждая ссылка (URL) в интернете состоит из нескольких компонент:\n",
"\n",
"* схема, *например, `http` или `https`*,\n",
"* хост, *наример, `en.wikipedia.org`*\n",
"* путь, по которому находится информация,\n",
"* параметры,\n",
"* якорь — указание фрагмента страницы."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "JHJGEWu4SPSN"
},
"source": [
""
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "yLuIXPezSPSV"
},
"source": [
"Одна и та же ссылка может иметь несколько форм и вести на ту же самую страницу. Во время обхода сайта это надо учитывать и сохранять один уникальный урл для каждой страницы. Процедура, приводящая урл к каноничному виду, называется нормализацией.\n",
"Процедуры, которые применяются к урлу для нормализации, описаны, например, на Википедии.\n",
"\n",
"Установите пакет `url_normalize`, в котором есть готовая функция для нормализации."
]
},
{
"cell_type": "raw",
"metadata": {
"id": "x1WMgDCoSPSX"
},
"source": [
"pip install url_normalize"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "RSEJtva6SPSY"
},
"source": [
"Прочитайте, как именно функция `url_normalize` меняет ссылку, и приведите примеры $4$ урлов, которые нормализуются к одному и тому же. Примеры должны демонстрировать различные этапы процедуры нормализации. Одним из этих примеров может быть сам нормализованный урл."
]
},
{
"cell_type": "code",
"execution_count": 1126,
"metadata": {
"id": "HD1enOlrSPSY"
},
"outputs": [],
"source": [
"from url_normalize import url_normalize"
]
},
{
"cell_type": "code",
"execution_count": 1127,
"metadata": {
"id": "5429_vCZSPSY"
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"http://www.example.com/~username/\n"
]
}
],
"source": [
"print(url_normalize('http://www.example.com/%7Eusername/'))"
]
},
{
"cell_type": "code",
"execution_count": 1128,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"http://www.example.com/~username/\n"
]
}
],
"source": [
"print(url_normalize('http://www.example.com:80/~username/'))"
]
},
{
"cell_type": "code",
"execution_count": 1129,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"http://www.example.com/~username/\n"
]
}
],
"source": [
"print(url_normalize('http://www.example.com/../a/../c/.././~username/'))"
]
},
{
"cell_type": "code",
"execution_count": 1130,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"http://www.example.com/~username/\n"
]
}
],
"source": [
"print(url_normalize('http://www.example.com/~username/'))"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "aYrDnZgOSPSY"
},
"source": [
"_____________\n",
"Изучите код, в котором скачиваются страницы сайта `simple.wikipedia.org` с занятия про парсинг данных. Код, реализующий обход в ширину с фильтрацией и нормализацией урлов, приведён в виде функции."
]
},
{
"cell_type": "code",
"execution_count": 1131,
"metadata": {
"id": "3RcFQtIuSPSZ"
},
"outputs": [],
"source": [
"from urllib.parse import urlparse, urldefrag, urljoin\n",
"from urllib.request import urlopen\n",
"from bs4 import BeautifulSoup\n",
"from queue import Queue\n",
"import time"
]
},
{
"cell_type": "code",
"execution_count": 1132,
"metadata": {},
"outputs": [],
"source": [
"def download_from_the_internet(url):\n",
" '''Скачивает сраницу с интернета\n",
"\n",
" Параметры:\n",
" url (str) - ссылка на страницу для скачивания\n",
"\n",
" Возвращает:\n",
" str - html-страница в виде строки, None в случае неудачи\n",
" '''\n",
" try:\n",
" return urlopen(url).read().decode('utf-8')\n",
" except KeyboardInterrupt:\n",
" raise\n",
" except:\n",
" return None\n",
" \n",
"def extract_links_from_html(url, html):\n",
" '''Парсит ссылки на странице\n",
"\n",
" Принимает:\n",
" url (str) - исходный урл страницы\n",
" html (str) - содержание html-страницы\n",
"\n",
" Возвращает:\n",
" list - список ссылок, находящихся на странице\n",
" '''\n",
" if html is None:\n",
" return []\n",
" \n",
" parser = BeautifulSoup(html)\n",
" # Формируем ссылки на те страницы, на которые ссылается документ\n",
" return [urljoin(url, link.get('href')) for link in parser.findAll('a')]\n",
"\n",
"def extract_text_info_from_html(html):\n",
" '''Парсит текстовую информацию на страницу\n",
"\n",
" Принимает:\n",
" html (str) - содержание html-страницы\n",
"\n",
" Возвращает:\n",
" dict - текстовая часть страницы по ключу text,\n",
" название по ключу title\n",
" '''\n",
" if html is None:\n",
" return {}\n",
" \n",
" try:\n",
" soup = BeautifulSoup(html, features=\"html.parser\")\n",
" for script in soup([\"script\", \"style\"]):\n",
" script.extract()\n",
"\n",
" # Объединяем строки текста\n",
" text = soup.get_text()\n",
" lines = (line.strip() for line in text.splitlines())\n",
" chunks = (phrase.strip() for line in lines for phrase in line.split(\" \"))\n",
" text = '\\n'.join(chunk for chunk in chunks if chunk)\n",
"\n",
" # Находим название на странице\n",
" title = soup.find('title').string\n",
"\n",
" return {'text': text, 'title': title}\n",
" except:\n",
" return {}\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "izuJ-jM9SPSZ"
},
"source": [
"Код обхода в ширину:"
]
},
{
"cell_type": "code",
"execution_count": 1133,
"metadata": {
"id": "5mC5Mt8QSPSZ"
},
"outputs": [],
"source": [
"def load_web_pages(seed, max_downloads, filtration_function):\n",
" '''Обходит web-страницы в ширину и загружает информацию о них.\n",
" \n",
" Принимает:\n",
" seed (str) -- страница, с которой начинать обход.\n",
" max_downloads (int) -- максимальное число загруженных страниц.\n",
" filtration_function (str -> bool) -- функция, указывающая, \n",
" стоит ли загружать страницу. Пример: is_wiki_article.\n",
" \n",
" Возвращает:\n",
" pages_json (list) - список словарей с информацией о страницах.\n",
" '''\n",
" \n",
" # Создаём список со страницами\n",
" pages_json = []\n",
" \n",
" # Создаём очередь для обхода в ширину\n",
" q = Queue()\n",
" q.put(url_normalize(seed))\n",
"\n",
" already_visited = set()\n",
" n_downloads = 0\n",
" time_start = time.time()\n",
"\n",
" while not q.empty():\n",
" # Нормализуем урл\n",
" main_url = url_normalize(q.get())\n",
" if main_url in already_visited:\n",
" continue\n",
" already_visited.add(main_url)\n",
" html = download_from_the_internet(main_url)\n",
"\n",
" # Извлекаем ссылки из страницы\n",
" children_links = extract_links_from_html(main_url, html)\n",
" time.sleep(1)\n",
"\n",
" # Извлекаем текст страницы\n",
" text_info = extract_text_info_from_html(html) \n",
"\n",
" #если все таки полезная страница\n",
" if text_info != {}:\n",
" # Добавляем запись в таблицу\n",
" text_info['url'] = main_url\n",
" pages_json.append(text_info)\n",
" text_info['num_links'] = len(children_links)\n",
" n_downloads += 1\n",
" \n",
" #для того, чтобы смотреть, как загружаются страницы\n",
" if n_downloads % 10 == 0:\n",
" print(n_downloads)\n",
" \n",
" if n_downloads > max_downloads:\n",
" break\n",
"\n",
" # Добавляем ещё не посещённые ссылки в очередь\n",
" for child in children_links:\n",
" if url_normalize(child) not in already_visited \\\n",
" and filtration_function(child):\n",
" q.put(url_normalize(child))\n",
" \n",
" return pages_json"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "NmvhIvxqSPSa"
},
"source": [
"**2.** Выберите сайт, который вам интересен, а также некоторую категорию страниц в нём. Поймите, с какой страницы сайта надо начать обход, чтобы обходить сайты данной категории.\n",
"\n",
"*Пример: ищем статьи про Data Science на Википедии, начинаем со статьи Data Dcience*.\n",
"\n",
"**Укажите, что выбрали:** Сайт bbc.com, будем искать новости на политические темы.\n",
"\n",
"Придумайте критерий, который по тексту из HTML-страницы будет определять, находится ли страница в определённой вами категории.\n",
"\n",
"*Пример: статья на Википедии про Data Science, если в ней есть слово \"data\" или термины из статистики, теории вероятностей и анализа данных*.\n",
"\n",
"**Опишите критерий:** Будет считать, что статься на политическую тему, если в ней встречаются слова по типу \"president\", \"government\", \"election\", \"minister\", \"chef\".\n",
"\n",
"Начав с выбранной страницы, скачайте не менее $500$ страниц сайта. В качестве функции фильтрации возьмите функцию, которая отделяет страницы с выбранного сайта от других."
]
},
{
"cell_type": "code",
"execution_count": 1134,
"metadata": {},
"outputs": [],
"source": [
"def filtr_function(url):\n",
" '''Проверяет, является ли ссылка страницей на www.bbc.com/news/'''\n",
" if 'www.bbc.com/news/' not in url:\n",
" return False\n",
" \n",
" prohibited = ['php', 'uk']\n",
" \n",
" # Проверяем, есть ли запрещённые строки в ссылке\n",
" for token in prohibited:\n",
" if token in url:\n",
" return False\n",
" \n",
" return True"
]
},
{
"cell_type": "code",
"execution_count": 1135,
"metadata": {
"id": "Ny_bHaM2SPSa"
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"10\n",
"20\n",
"30\n",
"40\n",
"50\n",
"60\n",
"70\n",
"80\n",
"90\n",
"100\n",
"110\n",
"120\n",
"130\n",
"140\n",
"150\n",
"160\n",
"170\n",
"180\n",
"190\n",
"200\n",
"210\n",
"220\n",
"230\n",
"240\n",
"250\n",
"260\n",
"270\n",
"280\n",
"290\n",
"300\n",
"310\n",
"320\n",
"330\n",
"340\n",
"350\n",
"360\n",
"370\n",
"380\n",
"390\n",
"400\n",
"410\n",
"420\n",
"430\n",
"440\n",
"450\n",
"460\n",
"470\n",
"480\n",
"490\n",
"500\n"
]
}
],
"source": [
"pages_json = load_web_pages('https://www.bbc.com/news', 500, filtr_function)"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "CRTS3n7SSPSa"
},
"source": [
"Cделайте таблицу со следующей информацией:\n",
"\n",
"* количество слов в тексте статьи;\n",
"* принадлежит ли страница выбранной категории.\n",
"\n",
"Для последнего пункта можете воспользоваться функцией поиска слов по заданным префиксам, рассмотренной на занятии."
]
},
{
"cell_type": "code",
"execution_count": 1136,
"metadata": {},
"outputs": [],
"source": [
"POLITIC_PREFIXES = [\n",
" 'politi',\n",
" 'president'\n",
" 'governmen',\n",
" 'election',\n",
" 'minister',\n",
" 'chief'\n",
"]"
]
},
{
"cell_type": "code",
"execution_count": 1137,
"metadata": {
"id": "86jEvSSbSPSa"
},
"outputs": [],
"source": [
"def is_in_category(text):\n",
" '''Вычисляет по тексту, является ли он про политику'''\n",
" \n",
" if text is None:\n",
" return False\n",
" \n",
" words = text.split()\n",
" \n",
" # Приводим слова к нижнему регистру\n",
" words = [w.lower() for w in words]\n",
" \n",
" for word in words:\n",
" for prefix in POLITIC_PREFIXES:\n",
" if word.find(prefix) != -1:\n",
" return True\n",
" \n",
" return False"
]
},
{
"cell_type": "code",
"execution_count": 1138,
"metadata": {},
"outputs": [],
"source": [
"columns = ['url', 'num_words', 'is_political', 'num_links', 'title', 'small_title']\n",
"table = pd.DataFrame(columns=columns)\n",
"\n",
"\n",
"for i, page in enumerate(pages_json):\n",
" page['num_words'] = len(page['text'].split())\n",
" page['is_political'] = is_in_category(page['text'])\n",
" table = table.append({'url' : page['url'], 'num_links' : page['num_links'], \n",
" 'num_words': page['num_words'], 'is_political': page['is_political'], \n",
" 'title' : page['title'], 'small_title' : str(page['title'])[:50]}, ignore_index=True)\n"
]
},
{
"cell_type": "code",
"execution_count": 1410,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
url
\n",
"
num_words
\n",
"
is_political
\n",
"
num_links
\n",
"
title
\n",
"
small_title
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
https://www.bbc.com/news
\n",
"
985
\n",
"
True
\n",
"
259
\n",
"
Home - BBC News
\n",
"
Home - BBC News
\n",
"
\n",
"
\n",
"
1
\n",
"
https://www.bbc.com/news/coronavirus
\n",
"
1720
\n",
"
True
\n",
"
330
\n",
"
Coronavirus - BBC News
\n",
"
Coronavirus - BBC News
\n",
"
\n",
"
\n",
"
2
\n",
"
https://www.bbc.com/news/av/10462520
\n",
"
271
\n",
"
False
\n",
"
100
\n",
"
One-minute World News - BBC News
\n",
"
One-minute World News - BBC News
\n",
"
\n",
"
\n",
"
3
\n",
"
https://www.bbc.com/news/world
\n",
"
1806
\n",
"
True
\n",
"
358
\n",
"
World - BBC News
\n",
"
World - BBC News
\n",
"
\n",
"
\n",
"
4
\n",
"
https://www.bbc.com/news/business
\n",
"
2658
\n",
"
True
\n",
"
331
\n",
"
Business - BBC News
\n",
"
Business - BBC News
\n",
"
\n",
"
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
\n",
"
\n",
"
496
\n",
"
https://www.bbc.com/news/world-middle-east-568...
\n",
"
952
\n",
"
True
\n",
"
119
\n",
"
Middle East states top Amnesty list of executi...
\n",
"
Middle East states top Amnesty list of executi...
\n",
"
\n",
"
\n",
"
497
\n",
"
https://www.bbc.com/news/world-africa-56773817
\n",
"
426
\n",
"
False
\n",
"
126
\n",
"
Handcuffed, blindfolded and beaten on Libya's ...
\n",
"
Handcuffed, blindfolded and beaten on Libya's ...
\n",
"
\n",
"
\n",
"
498
\n",
"
https://www.bbc.com/news/world-middle-east-567...
\n",
"
1595
\n",
"
True
\n",
"
113
\n",
"
Iran and Israel's shadow war takes a dangerous...
\n",
"
Iran and Israel's shadow war takes a dangerous...
\n",
"
\n",
"
\n",
"
499
\n",
"
https://www.bbc.com/news/world-middle-east-567...
\n",
"
1140
\n",
"
False
\n",
"
122
\n",
"
Iran nuclear attack: Mystery surrounds nuclear...
\n",
"
Iran nuclear attack: Mystery surrounds nuclear...
\n",
"
\n",
"
\n",
"
500
\n",
"
https://www.bbc.com/news/world-middle-east-566...
\n",
"
1093
\n",
"
True
\n",
"
116
\n",
"
Jordan crisis: How Prince Hamzah and Saudi Ara...
\n",
"
Jordan crisis: How Prince Hamzah and Saudi Ara...
\n",
"
\n",
" \n",
"
\n",
"
501 rows × 6 columns
\n",
"
"
],
"text/plain": [
" url num_words is_political \\\n",
"0 https://www.bbc.com/news 985 True \n",
"1 https://www.bbc.com/news/coronavirus 1720 True \n",
"2 https://www.bbc.com/news/av/10462520 271 False \n",
"3 https://www.bbc.com/news/world 1806 True \n",
"4 https://www.bbc.com/news/business 2658 True \n",
".. ... ... ... \n",
"496 https://www.bbc.com/news/world-middle-east-568... 952 True \n",
"497 https://www.bbc.com/news/world-africa-56773817 426 False \n",
"498 https://www.bbc.com/news/world-middle-east-567... 1595 True \n",
"499 https://www.bbc.com/news/world-middle-east-567... 1140 False \n",
"500 https://www.bbc.com/news/world-middle-east-566... 1093 True \n",
"\n",
" num_links title \\\n",
"0 259 Home - BBC News \n",
"1 330 Coronavirus - BBC News \n",
"2 100 One-minute World News - BBC News \n",
"3 358 World - BBC News \n",
"4 331 Business - BBC News \n",
".. ... ... \n",
"496 119 Middle East states top Amnesty list of executi... \n",
"497 126 Handcuffed, blindfolded and beaten on Libya's ... \n",
"498 113 Iran and Israel's shadow war takes a dangerous... \n",
"499 122 Iran nuclear attack: Mystery surrounds nuclear... \n",
"500 116 Jordan crisis: How Prince Hamzah and Saudi Ara... \n",
"\n",
" small_title \n",
"0 Home - BBC News \n",
"1 Coronavirus - BBC News \n",
"2 One-minute World News - BBC News \n",
"3 World - BBC News \n",
"4 Business - BBC News \n",
".. ... \n",
"496 Middle East states top Amnesty list of executi... \n",
"497 Handcuffed, blindfolded and beaten on Libya's ... \n",
"498 Iran and Israel's shadow war takes a dangerous... \n",
"499 Iran nuclear attack: Mystery surrounds nuclear... \n",
"500 Jordan crisis: How Prince Hamzah and Saudi Ara... \n",
"\n",
"[501 rows x 6 columns]"
]
},
"execution_count": 1410,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"table.to_csv('first_news.csv')\n",
"table"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "RVBT7vf1SPSb"
},
"source": [
"Определите, какой процент скачанных страниц принадлежит выбранной категории?"
]
},
{
"cell_type": "code",
"execution_count": 1140,
"metadata": {
"id": "JcSREDuRSPSb"
},
"outputs": [
{
"data": {
"text/plain": [
"0.5728542914171657"
]
},
"execution_count": 1140,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"table.sum()['is_political'] / len(table)"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "Kb9VYr_RSPSb"
},
"source": [
"C помощью гистограмм сравните визуально распределения количества слов в статьях из выбранной категории и во всех остальных. Для этих двух распределений вычислите средние, медианы и дисперсии. Средние и медианы отобразите на графиках с гистограммами. Сделайте выводы."
]
},
{
"cell_type": "code",
"execution_count": 1141,
"metadata": {
"id": "ESSLuUFxSPSb"
},
"outputs": [
{
"data": {
"text/plain": [
"[ url num_words is_political \\\n",
" 0 https://www.bbc.com/news 985 True \n",
" 1 https://www.bbc.com/news/coronavirus 1720 True \n",
" 3 https://www.bbc.com/news/world 1806 True \n",
" 4 https://www.bbc.com/news/business 2658 True \n",
" 5 https://www.bbc.com/news/technology 1865 True \n",
" .. ... ... ... \n",
" 493 https://www.bbc.com/news/world-europe-56845041 839 True \n",
" 495 https://www.bbc.com/news/world-middle-east-567... 962 True \n",
" 496 https://www.bbc.com/news/world-middle-east-568... 952 True \n",
" 498 https://www.bbc.com/news/world-middle-east-567... 1595 True \n",
" 500 https://www.bbc.com/news/world-middle-east-566... 1093 True \n",
" \n",
" num_links title \\\n",
" 0 259 Home - BBC News \n",
" 1 330 Coronavirus - BBC News \n",
" 3 358 World - BBC News \n",
" 4 331 Business - BBC News \n",
" 5 328 Technology - BBC News \n",
" .. ... ... \n",
" 493 122 Sarah Halimi: Frenchwoman's sister seeks trial... \n",
" 495 115 Syria to hold election in May after years of w... \n",
" 496 119 Middle East states top Amnesty list of executi... \n",
" 498 113 Iran and Israel's shadow war takes a dangerous... \n",
" 500 116 Jordan crisis: How Prince Hamzah and Saudi Ara... \n",
" \n",
" small_title \n",
" 0 Home - BBC News \n",
" 1 Coronavirus - BBC News \n",
" 3 World - BBC News \n",
" 4 Business - BBC News \n",
" 5 Technology - BBC News \n",
" .. ... \n",
" 493 Sarah Halimi: Frenchwoman's sister seeks trial... \n",
" 495 Syria to hold election in May after years of w... \n",
" 496 Middle East states top Amnesty list of executi... \n",
" 498 Iran and Israel's shadow war takes a dangerous... \n",
" 500 Jordan crisis: How Prince Hamzah and Saudi Ara... \n",
" \n",
" [287 rows x 6 columns],\n",
" url num_words is_political \\\n",
" 2 https://www.bbc.com/news/av/10462520 271 False \n",
" 42 https://www.bbc.com/news/world-asia-india-5686... 488 False \n",
" 43 https://www.bbc.com/news/world-asia-india-5685... 402 False \n",
" 45 https://www.bbc.com/news/world-asia-56877634 581 False \n",
" 46 https://www.bbc.com/news/world-us-canada-56859336 386 False \n",
" .. ... ... ... \n",
" 489 https://www.bbc.com/news/world-middle-east-568... 702 False \n",
" 492 https://www.bbc.com/news/world-middle-east-568... 936 False \n",
" 494 https://www.bbc.com/news/world-middle-east-568... 733 False \n",
" 497 https://www.bbc.com/news/world-africa-56773817 426 False \n",
" 499 https://www.bbc.com/news/world-middle-east-567... 1140 False \n",
" \n",
" num_links title \\\n",
" 2 100 One-minute World News - BBC News \n",
" 42 128 India Covid crisis: Inside the Delhi hospital ... \n",
" 43 82 Deaths climb as India reels from deadly Covid ... \n",
" 45 107 Menstrual leave: South Korea airline ex-CEO fi... \n",
" 46 120 Oscars 2021: The railway station now a hosting... \n",
" .. ... ... \n",
" 489 111 East Jerusalem clashes leave over 100 injured ... \n",
" 492 115 Syrian air-defence missile lands near Israeli ... \n",
" 494 117 AI unlocks ancient Dead Sea Scrolls mystery - ... \n",
" 497 126 Handcuffed, blindfolded and beaten on Libya's ... \n",
" 499 122 Iran nuclear attack: Mystery surrounds nuclear... \n",
" \n",
" small_title \n",
" 2 One-minute World News - BBC News \n",
" 42 India Covid crisis: Inside the Delhi hospital ... \n",
" 43 Deaths climb as India reels from deadly Covid ... \n",
" 45 Menstrual leave: South Korea airline ex-CEO fi... \n",
" 46 Oscars 2021: The railway station now a hosting... \n",
" .. ... \n",
" 489 East Jerusalem clashes leave over 100 injured ... \n",
" 492 Syrian air-defence missile lands near Israeli ... \n",
" 494 AI unlocks ancient Dead Sea Scrolls mystery - ... \n",
" 497 Handcuffed, blindfolded and beaten on Libya's ... \n",
" 499 Iran nuclear attack: Mystery surrounds nuclear... \n",
" \n",
" [214 rows x 6 columns]]"
]
},
"execution_count": 1141,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"subgroups = [(table[table['is_political'] == True]), (table[table['is_political'] == False])]\n",
"subgroups"
]
},
{
"cell_type": "code",
"execution_count": 1148,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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u3Ycfvjh7Lvvvqy33noA/PWvf2XttdduOvAOo1m2bBmXXnope+yxR72n1lhjDe68884VJ7bD6Iyv7BNtYZw/85nPcO655/L3v/+90eevv/56ttpqKxYuXFjv+Pe//30GDx5c71hT71nHjh3rtRs9ejQXXHABO+64IyeeeCIPPPAA++yzD//617/4+9//zl133UXHjh15++23y/tiJakIi+bDkvdb95wd1oVOGzS7+VlnndXoF7u1rr/+egYOHFiOzKQ2xUJUSundO5/7RHv2hLlzm99+n332YcqUKQwePJg///nPfPGLX2RaaYPTDz74gAsuuID//Oc/LF26lFNOOYX999+fV155he9///t8+OGHAJx33nn069ePxx57jCuvvJL111+fWbNm8dnPfpZLL710hdf0t2vXjv/973/U1NTwv//9j/XWW4/27dvz0EMPsccee/CZz3wGgD322IMHH3yQIUOG8L///Y/f/e53XHDBBZx22mmNB57UmxvePoeDDjqIGTNmNH9Aat3eEw5rwUCuRNHj3KVLF7p06cL999+/3HOvvfYaU6ZM4eSTT2b8+PErfS1NvWdpb7zxBgsXLmSnnXYC4NBDD+Xvf/87++yzDxMmTGDEiBF1hWuXLl2aM4SS1LYteR/+O751z7nl8BYVogADBw5k7Nix9Y7Nnz+fQw45pIyJSW2Ll+ZKKZMn5xN33ryWtf/CF77AX/7yFxYtWkSMkR133LHuuauuuopdd92VW2+9leuvv55LLrmEDz74gC5duvC73/2O22+/nZ///Of8+Mc/ruvzzDPPcM455/CXv/yFV155pa7YuvzyyxudjTv22GOZPXs2e+21F4cccgjnnnsuq622Gq+//jobbbRRXbvu3bvz+uuv18X6xje+wRprrNHk63p9u99z3333ccwxxyz33KJFizj88MM56qijuO+++xoP8GELB3Ilih7nFbnwwgs588wzWW215f+Z/vnPf87QoUO58MILWbx4MdD0e5bW8P3baKON6t6/OXPmMHXqVL785S/z1a9+laeffrpF+UqSVl2HDh3o1q1bvZ8NNli+mH3++ec54YQT2Gmnnejfvz/f/e536/4dr/XKK68QQlju56mnngLgtttuo2/fvvX6jBw5khACf/7znwEa7V/7c8UVVwCw7777Mi61Afvs2bP57Gc/u9wVO3feeSdDhw6lb9++7L///lx++eV1/++qzbU2N4A///nPhBDqxXjooYc4+uij2XHHHRkwYADHH3983es+66yzOOGEE+razpw5k5133pkbbrih7lj6tQE8/PDDhBDq9aupqWH8+PEceOCB9O3bl8GDB3P99dfXu4WloSuuuGK51/vmm28SQuCxxx6rOzZt2jSOPvpo+vbty8CBAzn33HPrXe101lln1Y3vZz/7Wfbbb7/lvoReWQyASZMmceihh9a1Ofnkk1m0aFG9+A1/9t133yZfyzHHHLPc+1NOzohKKQsWFJ1BYtttt+WVV15h8uTJ7LPPPvWee+ihh/jHP/7BddddByQF3Lx589hwww350Y9+xHPPPcdqq63GnDlz6vrssMMOdQXItttuy6uvvsqAAQP43ve+1+j5H3roIbbbbjuuv/56XnrpJb7+9a8zYAV70Dz77LO89NJLnHPOObzyyitNtvvJpb/mjDPOaLS4+uc//0n37t15+eWXOf744+nduzebbbZZk7HKoehxbso///lPNthgA/r06VPvf2QAp59+Ot26dWPJkiWcd955jBs3jlNOOaXJ92ydddZp1jmXLVvGe++9x5/+9CdmzJjBaaedxt///ndXoJSkNuLDDz/khBNOYJtttmHChAl89NFHXHDBBZxyyin86U9/qvv3urZwGjduHNtvvz3z5s3jy1/+cpNxn3zySaZMmVLv2EMPPVT35yOPPJJvfOMbfOELXwCSW1sac+GFF9KpU6d6x2699VYuueQSzjvvPHbccUdefvllRo0axeLFiznzzDOb9bofeughTjzxRIYPH86YMWNYbbXVmDp1KsuWLVuu7XPPPccJJ5zAiSeeyHHHHddovGXLlnHRRRctdyvRL3/5S+666y7OPfdcttlmG5577jnOO+882rdvz7Bhw5qVa2PeeOMNvvnNb3LQQQdxwQUX8Oabb3Leeedx7rnncvnll9e1q50VX7p0KZMmTeKiiy5ir732YquttmpWjFtuuYUxY8bw3e9+l/32248lS5bw0EMP8fHHH3PuuecycuRIAK677jqefPLJui8UVl999Ubz/vOf/0yMcZVfd3NYiEopI0ZAaRKrrPr1a3mffffdl5/97Gdcf/31vPvuu/We++Uvf8mWW25Z79gVV1xB165dufPOO/n444/ZYYcd6p5L3ye4+uqrN/qPd9ptt93GiBEjaNeuHZtvvjmbbLIJ//3vf+nevTuPP/54XbvXX3+dXXbZhSeffJKZM2ey7777snTpUubPn89xxx1X79tIgJn/foLTTz8dgHfeeYf777+f9u3bs//++9fdn7npppuyyy678MwzzyxfiK6/CgO5EkWOc1OmT5/OP/7xDx544AEWLVrEwoULOeOMM7j00kvZcMMN6851+OGH1xXKTb1n6fy6d+/Oa6+9Vvf4tddeqxv37t27c8ABB9CuXTt22GEHVlttNd55551Gv5GXJLW+yZMn8/7773PZZZex7rrrAnDppZdy8MEH869//YvddtsNSBbfg+QWi27durFo0aImY9bU1HDhhRdy0kkn1bs0uFu3bnV/Xn311encuXO9Yw1NmTKFZ599li9/+cv1bjf51a9+xRlnnFG3iOGmm27K6aefzjnnnMMZZ5xRdxXVRx991GTsX/3qV+y333784Ac/qDu2zTbbLNdu9uzZfOMb3+DYY49lxIgRTca7+eabAdhvv/2YP38+kBT51113HVdddVXdOG666aa8+OKL3HjjjZkK0RtvvJH111+fH//4x7Rv355tttmG0aNH881vfpOXXnqp7ned2llxSK5Yat++fV3R35wYV1555XKvfdttt637c+fOnYHki4T0uRrz0Ucfcemll3LyyScvd8l4OXlprpSSRxG6qnGPPPJIvvOd7yx3ecqee+7JH/7wh7pvPJ955hkgWTW1W7durLbaatx5552rXAQB9OjRg0cffRSAt956ixdeeIFNNtmEPffck4ceeoj33nuP9957j4ceeog999yTYcOG1c0g3nTTTfTq1Wu5IhTgH48+xz/+8Q/+8Y9/cNBBBzFq1Cj2339/3nvvvbrLdObPn8/06dPZeuutl0/s4PK/QUWOc1NGjhzJAw88wD/+8Q8uu+wydt11Vy699FIg+WYVkl8e7rvvvrr/GTf1nqVtuOGGrLPOOjz11FPU1NRwxx13sN9++wGw//77182+vvDCCyxZsoT111+/7K9NkrRqnn/+eXr37l1XhAJsueWWdO3aleeff77u2ILS5V1rrrnmSmPeeeedzJ8/n+HDh69yXkuWLOHiiy/me9/7Xr2rcObPn8/cuXP58Y9/zOc+97m6n7POOosPPviAN998k65du9KlSxcmT57c5P9Pn3nmGXbfffcV5vD6668zfPhw5s+fz1577dVku/fee49f/vKXnHXWWfVmAmsXL/zWt75VL9fLL7+cF198cYXnnjNnTr0+BxxwQL3nZ8+ezU477VRv3Yadd94ZoN779uijj/K5z32OPn36cM455/DDH/6QHj16NCvG22+/zWuvvbbScWqu3/72t3Tv3r1uFjwvzohKKSNHQh5f/IwYAanbKJplo4024mtf+9pyx7/97W9z4YUXcsghh/Dxxx+zySabcPXVVzNs2DBOPfVU7rjjDvbaa68mL51Ju/zyy+nTp09dMZI+x9lnn83QoUOpqanhjDPOqJsZ+/a3v82RRx4JwHe+8526hYuaMmHCBCC5z4DpI6Hf8gM8e/ZsRo0aRbt27aipqeHEE09svBB9bAQMbOFArkSR4/zmm29yxBFHsHDhQlZbbTV+//vf85e//GWFl9OeccYZvPPOO9TU1LDtttsyZsyYunybes++9KUv1a1IPGrUKM4++2w++ugj9t57b/bee28AjjjiCM455xyGDBlChw4duPjii70sV5IqUO0XlitbCf6DDz5g7NixnHvuucutsN4SN954Ix07duTLX/4yv/rVr+qOf/zxx0CyqF9t0ZRW+/+oCy64gO9///vccccddOjQoW5GtyX+85//8NWvfpWOHTvygx/8gDvvvLPRQvzKK69kp512Ys8992RyamGQ2i+dr7zySjbddNMWnXuTTTaptwXbO++8w1e+8pUWv4bPfe5zXHjhhSxbtoynn36aMWPG0KtXr7oZ2tby+uuvc+211/L73/8+93NZiEopPXvmE/eaa5pfiD755JPLHRs4cGDd0u1rrLEGP/rRj5Zr06tXLyZNmlT3uPbei3RfgPPPP7/uz03du9i9e/e6Sz4bOvLII+sK0cZssskm9f5xr7cw0ZqfDPDFF19c9+d+/frVy71Js68pWyHaFsa5W7duPPDAAyvMs2Hc66+/vtF2K3rP0tvi9O3bt977U6tjx451s66SpLZn66235k9/+hPvv/9+3azof//7X9566616X94+/fTTbLrppitdI2DcuHFsvvnmyy1Q0xLvvPMOt956K1dcccVy6z907dqVjTbaiJdeemmFvzfst99+PPbYY8ybN4+PP/6YKVOmcOGFF9Y9v/322/PII4+s8PLYHXbYgR/+8IcsWbKEBx98kJ/97GeMarCJ+3//+19uueUWbrvttuX6b7311nTq1IlXX32VPffcs7kvH4D27duz+eab1z1u+AX1VlttxaRJk1i6dGndjOYTTzxRd95aa6yxRl2cLbfckj/+8Y/cd9997LbbbiuN0aVLF7p3784jjzyy3JoXLXXppZdy4IEHssMOO6xw3Y9y8NJcKaV0H7fysp0DLEnSqhg6dCjrrrsuI0eO5LnnnuOpp57ijDPOYIcddmDXXXdl0aJFTJw4kfHjx6+w8INkwZ7f//73nHPOOZlyuvnmm9lll13YddddG33+tNNO43e/+x3jxo1j9uzZzJ49m7vvvpuf/exn9dq1b9+eTTfdlM0335yuXbvWe+5b3/oWf//73/npT39KjJHZs2fzpz/9ibmpffHWXXdd2rVrR8eOHfnZz37GLbfcwsMPP1wvznXXXcdRRx213NoPAGuvvTYjRozgkksu4eabb2bOnDnEGLn99tu5+uqrV3V4gGRV+3feeYfzzjuP559/nkcffZTRo0czePDgemthLFmyhDfffJPXX3+d++67j2effbYu1+bE+M53vsONN95YN9azZs3id7/7Xd12c83x2muvcd9999Wt55E3Z0SllJbu96kWKvM+oJIkfVqsscYaXHvttVx00UV85StfYfXVV2fPPffk3HPPpV27djz99NNcffXVnHLKKXzzm99cYaxly5Zx8MEHs/3222fKacmSJfUWEWrosMMOY6211uKaa67hyiuvpGPHjmy++eYcdthhzT7H3nvvzW9+8xuuvPJK/vCHP7DGGmvQp08fBg0a1Gj77bffnm9/+9ucc845TJo0qW72uGPHjpxyyilNnueUU06ha9eu3Hjjjfz4xz9m7bXXZquttuLYY49tdq6N2XDDDfntb3/LJZdcUjce+++/P2effXa9do899hh77rknq6++OhtuuCFf+9rX6q4qa06Mr3zlK3Ts2JHrrruOX/7yl6yzzjp87nOfa9FCSx9++CHf/e53V3pZd7m0W9HeOFo106ZN6wW80KdPn+WWsVbbNnduPpfn5hW34nwwF9bKMBBZ+0uSqtazzz7LdtttV//govmw5P3WTaTDutDJFcf16dHo3z2Sre9mzpwJsEX//v3nNHzeGVEpZdasfArGadMsRAFYMCtbITl/moWoJKn5Om1gUSi1URaiapPmz4f3W/kLTICzzoLS9lLNsu660JxtFg85BLz4AJgxGrpPWfX+DxwCwxxISZKkSmchqjbp/fdh/PjWP+/gwS077/DhzStEVbL/lKIzkCRJUhvgqrlSSnN2EFEGj40oOgNJkiS1ARaiUkpe93FmXPm7enQZkK3/Lg6kJElSNbAQlVL6988n7ggnAhNbZxyIrP0lSZLUJliISikXXZRP3Hbt8olbcf7UOVv/mxxISZKkamAhKqWcfnrRGVS5w+YWnYEkSZLaAAtRKWXOnKIzqHKvTyk6A0mSJLUBFqJSyvTp+cQdMiSfuBXn+XHZ+vd0ICVJkqqB+4hKKccck09ct4UpGZRxILL2lyR9qsyfn+xN3prWXXfV9hgfPHgwL7zwwnLHr7/+egYOHFiGzKS2xUJUSpk4EY44ovxxhw61GAXg4WGwx02r3n/KUItRSVKzvf8+jB/fuuccPnzVClGAb3zjG3zjG98AYP78+RxyyCHlS0xqY7w0V0rp3TufuJMn5xO34myc8dLauQ6kJKk6LVu2jLXXXptu3brRrVs3Nmikmr3iiisYPHgwd9xxB/vuuy99+/blhBNOYO7cZDHAl19+mW233ZYnn3yyXr/777+fPn36MH/+fF555RVCCMv9jC9V7GeddRYnnHBCXd/Fixez//77E0LgzTffrDv+9NNPc/zxx7PTTjuxxx57cMYZZ/D22283+fpqz/vUU0/VO37CCSdw1lln1T1esGAB55xzDgMHDqRv374cffTR9V7PY489Vi/vgQMH8t3vfpd333232TEA5syZw6mnnsrOO+/MjjvuyKGHHsq//vWv5eI3/HnssccafS1/+tOfCCFw/vnnNzkGqs9CVErp27foDKpcr2FFZyBJUpu0aNEiOnbsuNJ2r732Grfccgu//OUvufHGG3nnnXf43ve+B8Cmm27K7rvvzi233FKvzy233MIBBxxQr7gdN24cDz30UN3PV77ylUbPN378eObPn1/v2KxZszj++OPZddddue2227jmmmt45513+Pa3v01NTU1LX3o9Z599Nk888QS/+MUvuO2229hss8044YQTeOutt+q1u+uuu3jwwQf51a9+xdSpU/ntb3/b7BhvvPEGxxxzDB9++CHjxo3jrrvu4lvf+hYAn/vc5+rGpHYcb7nllrpjn/vc55bLeeHChfziF79g7bXXzvTaP20sRKWUMWOKzqDKuQ+oJEmNeu+995pVyHz00UdcfPHF9OnThx122IGf/exnPP3000ydOhWAr3zlK9x9993873//A+Ctt95iypQpfPnLX64XZ7311qubfe3WrRtrrrnmcud68803ufrqqznppJPqHb/22mvZf//9+da3vsWWW27J9ttvzyWXXMJTTz3FjBkzVnUImDNnDn/7298YM2YMu+22G9tssw0/+clPWG+99fjDH/5Qr+0GG2zAhhtuyKabbsoaa6zBuuuu2+wYN954I+3bt+fKK6/kc5/7HJtvvjkHHXQQu+66Kx07dlxuVnqDDTaoO9bYlwW/+tWv2G677fjsZz+7yq/908h7RKWUUaPyiZvxy8HqMSzjQGTtL0lSG/Tuu+/y0UcfseGGG660bdeuXdl0003rHm+99dasu+66zJ49mwEDBrDvvvuy9tpr8+c//5mjjjqK22+/nY022ojddtutxXlddtllDBo0iJ122qne8ZkzZ/Liiy9y3333LdfnpZdeYocddmgy5vHHH89qq30yF7Zo0aK6e2Fnz55Nu3bt6N+/f93zHTp0YKeddmL27Nn14hxwwAEAfPjhh+yxxx4MHz682TGeeeYZ+vfvzxprrNGMUVixF198kQkTJnDrrbcyxhmNFmn1QjSEcAjwE6A38BJwUYzxupX06QhcDHwV6Aw8DJwSY3wu1aYdcA5wMtAN+DdwWozx0VSbw0vP9wc2AHaLMf6rwbm+DxwBbAssA6YD56XjqHrNmJHP5bnjxsGIEeWPW3Hm3JTt8tznx8HWDqQkqbrMmjULgC233DJzrA4dOnDEEUdwyy23cNRRR3Hrrbdy5JFH0q5dy65K+n//7/9xzz338Je//IWXXnqp3nMff/wxhx9+eL17SWt16dJlhXF/+tOfst1229U9Puecc1qUV63x48ez/vrr8+abb3LxxRczatQoLrroolWKlcVPf/pTDj/8cLbeeutWP3ela9VLc0MIA4HbgInAjsDlwLgQwqEr6ToWOBY4HhgILAT+FkJYJ9XmdOBs4EygH0khem8IYZNUm7WBh4AfrOBcg4BxwF7AHiTF8t9CCH66PgVK/x8ouwZXtHx6vZpxsaHHHUhJUvV5+OGHWX/99dliiy1W2vatt97ilVdeqXs8e/Zs3n//fbbaaqu6Y1/+8peZOXMmN954Iy+//DKHHXZYi3O68MIL+frXv06PHj2We+6zn/0ss2bNYvPNN1/uZ5111mkk2ic22mijeu3Ts5Jbb701NTU1TJs2re7YkiVLeOqpp5Yr9DbeeGM233xzBgwYwFe+8hXuueeeZsfYfvvtmT59Oh999FGLxyXt0UcfZerUqZx66qmZ4nxatfY9ov8HPBhjHB1jfC7GeCUwgaR4bFQIYV1gBPD9GOPdMcangeOALsAxpTbtgJHAJTHGm2OMzwAnAe8A36qNFWO8Icb4I2D56wg+afOFGOO1McanY4zPAt8EPgIOzvTKVRHy2LpFKVm2bpEkqcosXryYKVOmcP311/P5z3+et99+mzfffJM333yzboGg9957r+5+T4A11liDs88+m5kzZ/L000/zgx/8gD59+jBgwIC6Nptssgm77747F110Efvssw/du3dvUV7Tp0/n5Zdf5sQTT2z0+ZNOOokYY10eL7/8Mg8//DA//OEPWbhw4SqMRGLzzTfnwAMPZNSoUTz66KM8//zznHvuubz33nsce+yx9drOnz+fN998k+eee4477rijrhBvToxhw4axaNEiTjnlFJ588klefvll7rvvPv71r38tl9OKjBs3ju985zusv/76q/yaP81auxDdHfhrg2P3ADuHEDo00WcA0DHdL8a4gOTy3D1Kh7YAejRoU1N6vAfZrAF0IilqVeUmTCg6gyo3ZWjRGUiS1GY8+eSTnHTSSXzwwQfcdttt7LnnnnU/tfdNnnrqqVx33Sd3sW200UYcfvjhnHrqqRx77LF07tyZX/7yl8vFPuqoo1iyZAlHHXVUi/P64IMPOP300xtdwAhgm2224aabbmL+/Pkcf/zxDBkyhAsuuIA11lijWSv/rsiFF17IzjvvzGmnncZhhx3GSy+9xLXXXkvXrl3rtTvkkEPYc889Oe6441h77bUZO3Zss2N0796dm266ifbt23PCCScwdOhQfv3rX7f48uXu3bsvVyCr+Vr7HtGNgNcbHHsN6AB0BeY10acGeKORfj1SbWgi9t6rmmzJJcC7wJ0Z46gC9OuXT9y77sonbsXJen/n3g6kJKn51l0XSmvYtOo5W2LjjTfmH//4R5PPp/fYrHXYYYet9HLb119/ne7du7P33vV/Fd5kk02IMTbZ7+KLL+biiy+ud2zgwIHL9dluu+24+uqrV5hDc8577bXX1nvcuXNnLrzwwibjNJZLQyuLAbDVVltx1VVXrbBNUzk3dfyGG25YYTzV56q5KxBC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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(15, 10))\n",
"\n",
"plt.title('Доля новостей на тему политики')\n",
"\n",
"plt.hist(\n",
" subgroups[0]['num_words'], \n",
" bins=10, \n",
" density=True,\n",
" alpha=0.5, \n",
" color='orange',\n",
" label = 'Политиечские новости'\n",
")\n",
"\n",
"plt.hist(\n",
" subgroups[1]['num_words'], \n",
" bins=10, \n",
" density=True,\n",
" alpha=0.5, \n",
" color='blue', \n",
" label = 'Другие новости' \n",
")\n",
"\n",
"max_ylim = 0.0014\n",
"# средние и медианы\n",
"for j in range(2):\n",
" col = (j == 0) * 'orange' + (j == 1) * 'blue'\n",
" plt.axvline(subgroups[j]['num_words'].mean(), color=col, linestyle='dashed', linewidth=1)\n",
" plt.text(subgroups[j]['num_words'].mean()*1.1, max_ylim*0.9, 'Mean: {:.2f}'.format(subgroups[j]['num_words'].mean()))\n",
" \n",
" plt.axvline(subgroups[j]['num_words'].median(), color=col, linestyle='dotted', linewidth=1)\n",
" plt.text(subgroups[j]['num_words'].median()*1.1, max_ylim*0.95, 'Median: {:.2f}'.format(subgroups[j]['num_words'].median()))\n",
" \n",
"plt.xlabel(\"Количество слов\")\n",
"plt.ylabel(\"Доля статей\")\n",
"\n",
"plt.legend()\n",
"plt.grid(ls=':')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Видно, что в политиечских новостях в среднем больше слов, чем в других. Также по гистограмма видно, что у политических новостей не такого, что у большого процента новостей определенное число слов, у них более менее равномерное распределение, в отличие от других новостей."
]
},
{
"cell_type": "code",
"execution_count": 1143,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Std political news : 825.49783002828, non political : 573.9745906212022\n"
]
}
],
"source": [
"# дисперсия\n",
"print('Std political of news : {}, non political : {}'.format(subgroups[0]['num_words'].std(), subgroups[1]['num_words'].std()))"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "ten-hEvMSPSb"
},
"source": [
"Постройте boxplot-графики для того, чтобы сравнить эти 2 распределения. Какой способ сравнения кажется вам более удобным?"
]
},
{
"cell_type": "code",
"execution_count": 1144,
"metadata": {
"id": "6MAL_YBhSPSb"
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(10,10))\n",
"\n",
"sns.boxplot(data=table, x='is_political', y='num_words', showfliers = False, palette='Set3')\n",
"\n",
"plt.title('Количество слов в политических статьях')\n",
"plt.xlabel('Политическая новость')\n",
"plt.ylabel('Количество слов')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"К слову, можно было не строить предыдущий график, на этом все видно гораздо лучше. Медиана количества слов в политических новостях повыше. Разброс примерно одинаковый."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "E075Q2TeSPSc"
},
"source": [
"**3.** При помощи `plotly` визуализируйте скачанные страницы сайта. В качестве значений по осям возьмите количество слов на странице и количество ссылок на ней. Цветом обозначьте принадлежность выбранной вами категории. При наведении курсора на точку, обозначающую страницу, должна появляться подсказка с названием этой страницы."
]
},
{
"cell_type": "code",
"execution_count": 1404,
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"hovertemplate": "%{hovertext}
is_political=True num_words=%{x} num_links=%{y}",
"hovertext": [
"Home - BBC News",
"Coronavirus - BBC News",
"World - BBC News",
"Business - BBC News",
"Technology - BBC News",
"Science & Environment - BBC News",
"Stories - BBC News",
"Entertainment & Arts - BBC News",
"Health - BBC News",
"BBC World News: 24 hour news TV channel - BBC News",
"In Pictures - BBC News",
"Reality Check - BBC News",
"Newsbeat - BBC News",
"Long Reads - BBC News",
"Your Coronavirus Stories - BBC News",
"Africa - BBC News",
"Asia - BBC News",
"Australia - BBC News",
"Europe - BBC News",
"Latin America & Caribbean - BBC News",
"Middle East - BBC News",
"US & Canada - BBC News",
"England - BBC News",
"Northern Ireland - BBC News",
"Scotland - BBC News",
"Wales - BBC News",
"UK Politics - BBC News",
"Local News - BBC News",
"Market Data - BBC News",
"New Economy - BBC News",
"New Tech Economy - BBC News",
"Companies - BBC News",
"Entrepreneurship - BBC News",
"Technology of Business - BBC News",
"Global education - BBC News",
"Economy - BBC News",
"Global Car Industry - BBC News",
"Business of Sport - BBC News",
"Covid: Countries send aid to ease India's oxygen e",
"India - BBC News",
"India Covid: Patients dying without oxygen amid De",
"Iraq Covid hospital fire: 82 dead after 'oxygen ta",
"Indonesian navy submarine found split into three o",
"Somalia violence: Rival units fight amid row over ",
"Biden says Armenian mass killing was genocide - BB",
"Cisco says computer chip shortage to last six mont",
"India Covid crisis: Did election rallies help spre",
"Brazil: Environment police battle for Amazon rainf",
"Retracing Albania's history through photography - ",
"Afghanistan War: How can the West fight terrorism ",
"Ghana basks in Twitter’s surprise choice as Africa",
"Screen time at 'breaking point' but can tech help?",
"Telegram misogyny: 'They wanted to tie me and my c",
"The homeless drug addict who became a professor - ",
"Coronavirus - BBC News",
"Coronavirus - BBC News",
"Coronavirus - BBC News",
"India Covid surge: Hospitals send SOS as record de",
"Covid-19: Israel records no daily deaths for the f",
"One Covid vaccine cuts infection rate in all age g",
"One Covid vaccine cuts infection rate in all age g",
"Coronavirus: WHO urges African nations to keep exp",
"Covid: What is happening with the EU vaccine rollo",
"Covid: Are some states lifting restrictions too so",
"Coronavirus vaccine: India begins world's biggest ",
"Coronavirus: Why are infections rising again in US",
"Coronavirus: Is India's test and tracing strategy ",
"Vaccine rumours debunked: Microchips, 'altered DNA",
"Covid-19: What’s the harm of ‘funny’ anti-vaccine ",
"Coronavirus: Fact-checking fake stories in Africa ",
"Covid: India sets another infection record as US s",
"Coronavirus news stream - BBC News",
"Coronavirus news stream - BBC News",
"Your Money - BBC News",
"Parliaments - BBC News",
"Family & Education - BBC News",
"Disability - BBC News",
"Brazil: Environment police battle for Amazon rainf",
"World - BBC News",
"World - BBC News",
"World - BBC News",
"Killarney National Park: Major fire damages beauty",
"Can Western brands recover from consumer backlash ",
"World news stream - BBC News",
"World news stream - BBC News",
"Business - BBC News",
"Business - BBC News",
"Business - BBC News",
"Cisco boss: Semiconductor shortage 'is a big probl",
"How will 'chipageddon' affect you? - BBC News",
"Sainsbury's ex-boss buys into grocery app market -",
"Scotland business - BBC News",
"Brexit: UK and Australia agree 'vast majority' of ",
"Covid costs push government borrowing to highest s",
"Covid costs push government borrowing to highest s",
"Shopping in 10 minutes: The new supermarket battle",
"Coffee waste: Companies offer up new solutions - B",
"NIO: 'Tesla killer' wants better US-China cooperat",
"'I saved my firm by turning my weakness into a str",
"Lockdown eases: How we fit bras at a social distan",
"Convicted Post Office workers have names cleared -",
"Post Office scandal: What the Horizon saga is all ",
"Business news stream - BBC News",
"Business news stream - BBC News",
"Technology - BBC News",
"Technology - BBC News",
"Technology - BBC News",
"Flubot: Warning over major Android 'package delive",
"GCHQ chief warns of tech 'moment of reckoning' - B",
"Jack Dorsey and Elon Musk agree on bitcoin's green",
"Jack Dorsey and Elon Musk agree on bitcoin's green",
"Turkey launches international hunt for cryptocurre",
"Technology news stream - BBC News",
"Technology news stream - BBC News",
"Science & Environment - BBC News",
"Science & Environment - BBC News",
"Science & Environment - BBC News",
"Brazil cuts environment budget despite climate sum",
"Amazon rainforest plots sold via Facebook Marketpl",
"Biden: This will be 'decisive decade' for tackling",
"Biden: This will be 'decisive decade' for tackling",
"Glasgow & West Scotland - BBC News",
"Nasa's Ingenuity helicopter makes second Mars flig",
"What is the Paris climate agreement and why did th",
"What is climate change? A really simple guide - BB",
"Climate change: EU to cut CO2 emissions by 55% by ",
"Nasa successfully flies small helicopter on Mars -",
"Nasa chooses SpaceX to build Moon lander - BBC New",
"Carbon Mapper satellite network to find super-emit",
"The 'Iron Man' body armour many of us may soon be ",
"Science and Environment news stream - BBC News",
"Science and Environment news stream - BBC News",
"Stories - BBC News",
"Stories - BBC News",
"Stories - BBC News",
"The UK professor and the fake Russian agent - BBC ",
"Germany and Namibia: What's the right price to pay",
"Black Power: A British story of resistance told th",
"Entertainment & Arts - BBC News",
"Entertainment & Arts - BBC News",
"Entertainment & Arts - BBC News",
"Razzies: Singer Sia named worst director for contr",
"ASMR: Why is it being used more in the music indus",
"Oscars 2021: How to see the films in this year's r",
"Entertainment & Arts news stream - BBC News",
"Entertainment & Arts news stream - BBC News",
"Health - BBC News",
"Health - BBC News",
"Health - BBC News",
"Malaria vaccine hailed as potential breakthrough -",
"What's gone wrong with Australia's vaccine rollout",
"Covid-19 in India: Why second coronavirus wave is ",
"Coronapas: The passport helping Denmark open up af",
"Mental health: Trauma, genocide and my invisible i",
"Covid: Science advisers call for better PPE for he",
"Health news stream - BBC News",
"Health news stream - BBC News",
"BBC World News: 24 hour news TV channel - BBC News",
"BBC World News: 24 hour news TV channel - BBC News",
"BBC World News: 24 hour news TV channel - BBC News",
"India: ‘A broken country, a country in torment’ - ",
"In Pictures - BBC News",
"In Pictures - BBC News",
"In Pictures - BBC News",
"Africa's week in pictures: 16-22 April 2021 - BBC ",
"Week in pictures: 10 - 16 April 2021 - BBC News",
"In pictures: Raúl Castro's career over six decades",
"Week in pictures: 3 - 9 April 2021 - BBC News",
"Week in pictures: 27 March - 2 April 2021 - BBC Ne",
"Week in pictures: 20 - 26 March 2021 - BBC News",
"Week in pictures: 13 - 19 March 2021 - BBC News",
"Week in pictures: 6 - 12 March 2021 - BBC News",
"Week in pictures: 17 - 23 April 2021 - BBC News",
"Africa's week in pictures: 9-15 April 2021 - BBC N",
"In Pictures news stream - BBC News",
"In Pictures news stream - BBC News",
"Reality Check - BBC News",
"Reality Check - BBC News",
"Reality Check - BBC News",
"Georgia voting: Fact-checking claims about the new",
"Covid-19 Africa: What is happening with vaccines? ",
"India coronavirus: Can its vaccine producers meet ",
"Myanmar coup: Does the army have evidence of voter",
"Tigray conflict: The fake UN diplomat and other mi",
"Ethiopia's Tigray crisis: Fact-checking misleading",
"Coronavirus: How President Biden plans to tackle t",
"US election 2020: How much did it cost and who pai",
"US Election 2020: Can you trust the polls? - BBC N",
"Covid: Why was India not already on the red list? ",
"Afghanistan: Have things improved since the Taliba",
"Lateral-flow tests: What are the risks and benefit",
"Covid: How do I get a lateral flow or PCR test? - ",
"Green targets: Do governments meet them? - BBC New",
"Northern Ireland: Did anyone warn about Brexit bor",
"Russia Ukraine conflict: Fact-checking Russian TV'",
"Reality Check news stream - BBC News",
"Reality Check news stream - BBC News",
"Newsbeat - BBC News",
"Newsbeat - BBC News",
"Newsbeat - BBC News",
"Covid and India: 'It feels like we're back to squa",
"Radio 1 launches Relax music stream with ASMR and ",
"Long Reads - BBC News",
"Long Reads - BBC News",
"Long Reads - BBC News",
"How the Bay of Pigs invasion began - and failed - ",
"Bangladesh at 50: Why climate change could destroy",
"'My father, the killer' - BBC News",
"Skylab: The myth of the mutiny in space - BBC News",
"Who truly was the most dishonest president? - BBC ",
"How a ring tells the story of a forgotten secret a",
"Your Coronavirus Stories - BBC News",
"Your Coronavirus Stories - BBC News",
"Your Coronavirus Stories - BBC News",
"'Long Covid': Why are some people not recovering? ",
"Coronavirus: Lessons from 2008 for the class of 20",
"India coronavirus: Desperate Covid-19 patients tur",
"Africa - BBC News",
"Africa - BBC News",
"Africa - BBC News",
"Chad after Idriss Déby: African Union urges end to",
"Isa Pantami: The Nigerian minister haunted by his ",
"Chad family feud intensifies transition tensions a",
"Gerd: Sudan talks tough with Ethiopia over River N",
"Who is Mahamat Déby, the new leader of Chad? - BBC",
"Chad's President Idriss Déby is one of Africa's lo",
"Idriss Déby: Thousands attend funeral of Chad pres",
"Africa news updates - BBC News",
"Africa news updates - BBC News",
"Asia - BBC News",
"Asia - BBC News",
"Asia - BBC News",
"China - BBC News",
"Myanmar: Military chief urged to stop violence on ",
"Nepal opens replica Dharahara Tower in Kathmandu -",
"Varanasi: The viral picture that defines India's C",
"Covid in Uttar Pradesh: Coronavirus overwhelms Ind",
"Soutik Biswas | BBC News",
"Indonesian submarine sank off Bali, navy says - BB",
"Asia news stream - BBC News",
"Asia news stream - BBC News",
"Australia - BBC News",
"Australia - BBC News",
"Australia - BBC News",
"Australia resists calls for tougher climate target",
"What is Australia doing to tackle climate change? ",
"Australia provokes China anger over scrapped deals",
"Australia ditches milkshake sex education video am",
"Sydney remembers Prince Philip: ‘We feel more conn",
"Is the Australia-NZ travel bubble the way ahead? -",
"Australia opens travel bubble with New Zealand - B",
"Why Aboriginal people are still dying in police cu",
"Why Australia is in hysterics over a 'navy twerkin",
"Australia news stream - BBC News",
"Australia news stream - BBC News",
"Europe - BBC News",
"Europe - BBC News",
"Europe - BBC News",
"French police station stabbing: Terror inquiry int",
"Why holidays in Majorca could decide who runs Germ",
"European Super League: Why were there no teams fro",
"'I would like Russia to be more free' - BBC News",
"Covid map: Coronavirus cases, deaths, vaccinations",
"Europe news stream - BBC News",
"Europe news stream - BBC News",
"Latin America & Caribbean - BBC News",
"Latin America & Caribbean - BBC News",
"Latin America & Caribbean - BBC News",
"Amazon under threat: Fires, loggers and now virus ",
"Tyne & Wear - BBC News",
"Brazil crime: One of world's biggest arms traffick",
"Coronavirus: Pfizer confirms fake versions of vacc",
"Mexico cartel used explosive drones to attack poli",
"Covid in Brazil: Hunger worsens in city slums - BB",
"Brazil Amazon: Celebrities urge Biden to refuse de",
"UN to provide food to Venezuela children amid cris",
"Cuba leadership: Díaz-Canel named Communist Party ",
"Middle East - BBC News",
"Middle East - BBC News",
"Middle East - BBC News",
"Palestinian election: Leaders face reckoning as ra",
"Stranded sailor allowed to leave abandoned ship af",
"Sarah Halimi: Frenchwoman's sister seeks trial in ",
"Syria to hold election in May after years of war -",
"Middle East states top Amnesty list of executioner",
"Iran and Israel's shadow war takes a dangerous tur",
"Jordan crisis: How Prince Hamzah and Saudi Arabia "
],
"legendgroup": "True",
"marker": {
"color": "#636efa",
"symbol": "circle"
},
"mode": "markers",
"name": "True",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
985,
1720,
1806,
2658,
1865,
1934,
788,
1780,
1719,
439,
1617,
2448,
282,
1831,
1967,
4012,
1697,
1862,
1749,
1830,
2244,
1929,
1782,
1991,
1994,
1919,
1802,
163,
589,
1869,
1964,
1855,
2093,
1812,
1291,
1827,
1889,
2097,
1356,
2024,
1507,
728,
689,
692,
904,
1328,
1045,
469,
454,
1847,
1591,
1315,
1225,
3716,
1720,
1720,
1720,
1076,
784,
956,
956,
894,
1154,
1210,
1636,
1098,
1102,
1596,
1283,
1261,
1017,
1143,
1106,
1779,
1512,
1806,
1784,
469,
1806,
1806,
1806,
821,
1511,
1283,
2821,
2658,
2658,
2658,
357,
1312,
707,
1754,
682,
1243,
1243,
1575,
1589,
1007,
501,
383,
1779,
1197,
1701,
1199,
1865,
1865,
1865,
1066,
1047,
877,
877,
754,
1143,
1143,
1934,
1934,
1934,
786,
1561,
1294,
1294,
1807,
1109,
1093,
1511,
837,
1333,
1346,
1224,
1342,
1252,
1053,
788,
788,
788,
5689,
1826,
1537,
1780,
1780,
1780,
776,
489,
1792,
1241,
1118,
1719,
1719,
1719,
952,
1410,
1901,
1740,
1628,
1068,
1217,
1098,
439,
439,
439,
446,
1617,
1617,
1617,
392,
547,
728,
463,
464,
542,
469,
595,
580,
368,
1065,
1089,
2448,
2448,
2448,
1206,
1042,
1184,
1306,
1105,
1154,
421,
468,
444,
1130,
1283,
1214,
984,
1519,
1379,
1260,
1635,
862,
282,
282,
282,
1220,
743,
1831,
1831,
1831,
4463,
2118,
3068,
2535,
2133,
3890,
1967,
1967,
1967,
1603,
465,
1688,
4012,
4012,
4012,
872,
1492,
986,
1415,
388,
386,
1116,
3578,
4068,
1697,
1697,
1697,
1744,
1178,
298,
1075,
1613,
328,
556,
1411,
1217,
1862,
1862,
1862,
842,
1152,
845,
1279,
419,
1324,
1187,
1517,
1275,
1265,
1195,
1749,
1749,
1749,
1159,
1274,
581,
545,
3326,
1828,
1479,
1830,
1830,
1830,
6117,
2080,
693,
690,
792,
1334,
842,
988,
1075,
2244,
2244,
2244,
2348,
1330,
839,
962,
952,
1595,
1093
],
"xaxis": "x",
"y": [
259,
330,
358,
331,
328,
328,
212,
324,
314,
201,
327,
296,
178,
312,
322,
321,
340,
335,
345,
351,
342,
354,
345,
357,
366,
374,
346,
174,
221,
360,
359,
361,
340,
348,
296,
365,
366,
337,
128,
334,
125,
114,
107,
112,
116,
123,
106,
119,
130,
119,
127,
110,
109,
83,
330,
330,
330,
114,
116,
114,
114,
118,
125,
118,
109,
86,
116,
118,
114,
117,
120,
252,
238,
338,
305,
337,
296,
119,
358,
358,
358,
113,
119,
268,
248,
331,
331,
331,
114,
114,
116,
357,
115,
120,
120,
120,
117,
115,
132,
123,
129,
116,
270,
278,
328,
328,
328,
117,
118,
114,
114,
116,
250,
238,
328,
328,
328,
116,
105,
113,
113,
350,
109,
119,
132,
119,
110,
112,
118,
114,
239,
212,
212,
212,
212,
107,
108,
106,
324,
324,
324,
111,
119,
110,
241,
246,
314,
314,
314,
111,
121,
117,
118,
120,
111,
259,
243,
201,
201,
201,
117,
327,
327,
327,
87,
76,
81,
77,
76,
76,
76,
77,
76,
86,
246,
246,
296,
296,
296,
118,
113,
115,
119,
118,
127,
123,
118,
115,
117,
119,
120,
125,
118,
114,
115,
269,
233,
178,
178,
178,
122,
116,
312,
312,
312,
89,
115,
105,
108,
123,
108,
322,
322,
322,
127,
129,
125,
321,
321,
321,
117,
114,
119,
121,
114,
111,
118,
250,
242,
340,
340,
340,
316,
114,
82,
117,
114,
120,
108,
245,
248,
335,
335,
335,
116,
126,
115,
131,
123,
123,
116,
119,
125,
259,
263,
345,
345,
345,
115,
123,
132,
135,
106,
264,
259,
351,
351,
351,
188,
341,
112,
115,
114,
121,
118,
119,
116,
342,
342,
342,
119,
112,
122,
115,
119,
113,
116
],
"yaxis": "y"
},
{
"hovertemplate": "%{hovertext}
is_political=False num_words=%{x} num_links=%{y}",
"hovertext": [
"One-minute World News - BBC News",
"India Covid crisis: Inside the Delhi hospital runn",
"Deaths climb as India reels from deadly Covid wave",
"Menstrual leave: South Korea airline ex-CEO fined ",
"Oscars 2021: The railway station now a hosting ven",
"Man jumps through car window to stop dangerous dri",
"Alber Elbaz: Fashion designer dies in Paris aged 5",
"Oscars 2021: Stars prepare for in-person ceremony ",
"Deep Time study: French volunteers leave cave afte",
"Covid: Man arrested after infecting 22 people in M",
"India Covid: Families appeal for help in Delhi's o",
"ICYMI: Chinese kite festival and a whale in Italy ",
"Oscars 2021: 'I don't mind being the underdog' - B",
"Sierra Leone: 'Covid-19 will go, we need to focus ",
"It's the Oscars 2021 - but how many people have se",
"The disabled doctors not believed by their colleag",
"Nil-by-mouth foodie: The chef who will never eat a",
"Why are so many babies dying of Covid-19 in Brazil",
"The BBC News app gives you the best of BBC News wh",
"Working abroad: 'The pandemic just made it harder'",
"What is the India Covid variant and will vaccines ",
"Is Europe's AstraZeneca jab decision-making flawed",
"Nick Triggle | BBC News",
"Covid symptoms: Is it a cold, flu or coronavirus? ",
"Travel abroad UK: how to fly during a Covid pandem",
"Coronavirus cure: What progress are we making on t",
"Coronavirus: Here's how you can stop bad informati",
"Covid in California: The state is struggling to co",
"Covid: How are European countries tackling the pan",
"Are pandemics the new normal? - BBC News",
"Coronavirus vaccine: What are human challenge tria",
"Vaccine group: Which vaccine group am I in? - BBC ",
"Coronavirus: What has Covid done for climate crisi",
"Covid: What happens in a hospital intensive care u",
"Coronavirus: Africa's new variants are causing gro",
"Iraq Covid fire: Inside Baghdad hospital where dea",
"One-minute World News - BBC News",
"BBC – Sign in",
"One-minute World News - BBC News",
"One-minute World News - BBC News",
"One-minute World News - BBC News",
"Man jumps through car window to stop dangerous dri",
"Oscars 2021: The railway station now a hosting ven",
"Sierra Leone: 'Covid-19 will go, we need to focus ",
"ICYMI: Chinese kite festival and a whale in Italy ",
"Oscars 2021: 'I don't mind being the underdog' - B",
"US Dragon spaceship arrives at International Space",
"US Dragon spaceship arrives at International Space",
"Wolfwalkers: 'This year the Oscars are coming to K",
"Vebitcoin: Turkey arrests four people after crypto",
"US President Joe Biden to 'propose hiking tax on r",
"Sir James Dyson: From barrows to billions - BBC Ne",
"BBC World News business headlines - BBC News",
"Shanghai Auto Show: Five electric car brands to lo",
"Covid: Michelin-starred Amsterdam restaurant's €20",
"Tesla's Autopilot 'tricked' to operate without dri",
"Tech Tent: The audio revolution? - BBC News",
"Capitol riot: Man accused after Bumble dating app ",
"Call of Duty: Warzone goes back to the 1980s - BBC",
"DNA-based robots designed rapidly and other tech n",
"The One and Only Ivan: How we brought the animals ",
"Will NFTs change how we buy our homes? - BBC News",
"A look at some of the infamous moments at tech eve",
"Is it the end of the line for landline phones? - B",
"Could electric tattoos be the next step in body ar",
"Amazon: How one cancer patient's story helps expla",
"The Midnight Sky: How we built the visual effects ",
"SpaceX Dragon crew of four astronauts blast off to",
"Rory Cellan-Jones | BBC News",
"SpaceX launch: What is it and why is crew 2 going ",
"An indigenous leader in Brazil trying to protect t",
"Chernobyl radiation damage 'not passed to children",
"Climate Basics: Your carbon footprint explained - ",
"Climate change: Growing doubts over chip fat biofu",
"The best climate solution you've never heard of - ",
"US Dragon crewship launches to space station - BBC",
"Commercial satellites dock high above Earth - BBC ",
"A68: Iceberg that became a social media star melts",
"Sir David Attenborough's new doc: 'Humans are intr",
"Muons: 'Strong' evidence found for a new force of ",
"Iceland volcano eruption: Music video and wedding ",
"Prof Niklas Höhne: China cautious on climate chang",
"The 'monster' iceberg: What happened next? - BBC N",
"Jonathan Amos | BBC News",
"The beauty ideal fuelling an illicit drugs trade -",
"How sex surrogates are helping injured Israeli sol",
"Encephalitis: 'Friendly fire' in my brain saw me s",
"'We found a baby on the subway - now he's our son'",
"Letterbox contact: ‘Don’t my birth children have a",
"DNA Family Secrets: What happened to Bill's father",
"'We couldn’t afford fertility treatment so we risk",
"Three surprising things you can make with mushroom",
"The petrol that was poisoning children - BBC News",
"Joe believes playing video games helps his mental ",
"Oscars 2021: The nominations in full - BBC News",
"Oscars 2021: 19 geeky facts from Borat to Boseman ",
"It's the Oscars 2021 - but how many people have se",
"Oscars 2021: Why Two Distant Strangers is 'importa",
"Time: A love story coloured by incarceration - BBC",
"The real-life nomads of Nomadland - BBC News",
"Rob McElhenney: Wrexham reminded me of Philadelphi",
"Ashley Cain's daughter Azaylia dies aged 8 months ",
"Rapper Lil Mosey wanted by US police over rape cha",
"Hollywood has its most diverse year, says report -",
"Carey Mulligan dedicates Independent Spirit awards",
"Bollywood composer Shravan Rathod dies of Covid ag",
"Black ballet dancer Lopes Gomes wins Berlin racism",
"US lifts pause on Johnson & Johnson vaccine - BBC ",
"Two 13-year-old boys desperate to get a vaccine - ",
"Covid: Smell training recommended for lost sense o",
"Where and how to watch BBC World News - BBC News",
"About BBC World News TV - BBC News",
"India: ‘The worst humanitarian crisis I’ve witness",
"Lord Stern: We must act strongly on climate change",
"Covid: Those warning signs are being photographed ",
"In pictures: US reacts to Chauvin trial verdict - ",
"RHS Photographic Competition 2021 winners revealed",
"Prince Philip funeral: Pictures as Queen and natio",
"Your pictures on the theme of 'my favourite food' ",
"Your pictures on the theme of 'sculpture' - BBC Ne",
"Your pictures on the theme of 'I made this' - BBC ",
"Your pictures on the theme of 'the beauty of trees",
"Project 17: The photograph that united a family - ",
"Photos from Australia: Capturing 'flash rips' and ",
"Covid: The front-line doctor photographing the pan",
"‘How I nearly missed the beauty in this image’ - B",
"Your pictures on the theme of 'fences' - BBC News",
"In pictures: 2021 Sony World Photography Awards - ",
"When the Queen was snapped 'giggling' at Prince Ph",
"Phil Coomes | BBC News",
"Coronavirus in South Asia: Where are numbers going",
"Suez Canal: How did they move the Ever Given? - BB",
"President Biden's first press conference fact-chec",
"Covid: How ethnicity and wealth affect US vaccine ",
"Has China lifted 100 million people out of poverty",
"Electric Cars: Is it time to buy one? - BBC News",
"Climate Basics: CO2 explained - BBC News",
"Coronavirus: What's the risk on transport? - BBC N",
"George Floyd: How are African-Americans treated un",
"Jodie Harsh on My House, clubs and 'drag queen roc",
"Lockdown lip fillers gone wrong: 'My lips went bla",
"London Grammar: 'Men aren't told what to wear, so ",
"European Super League: Five things that lasted lon",
"Explosive gender reveal party shakes houses miles ",
"'Legend' Annie Mac is leaving BBC Radio 1 after 17",
"Greta Thunberg: Meeting David Attenborough was 'in",
"Online dating: 'In 2021 everyone is a kind-of catf",
"AJ Tracey: Gig organisers fined £10k for Covid rul",
"Planet and plastic: End of the love story? - BBC N",
"Driving tests: Relief and new-found freedom as pos",
"St Vincent volcano: ‘A horrifying 72 hours’ - BBC ",
"Fifth of all songs streamed in UK in 2020 were rap",
"The Circle's Manrika on trolling: 'You're a woman ",
"North Korea’s ‘only openly gay defector’ finds lov",
"The art dealer, the £10m Benin Bronze and the Holo",
"The woman with HIV helping others have a 'good dea",
"'I've been listening to 300 vinyl records to get m",
"Long Covid: Who is more likely to get it? - BBC Ne",
"Europe's oldest person survives Covid just before ",
"Young shielders: Covid vaccine is a ticket back to",
"How to share your questions, stories, pictures and",
"Coronavirus: What questions do you have? - BBC New",
"BBC Have Your Say on WhatsApp - BBC News",
"Coronavirus: When home is both prison and sanctuar",
"Recordings show lockdown London quieter than 1928 ",
"Coronavirus: 'We made a feature film in lockdown' ",
"Coronavirus: Does your mask need an upgrade? - BBC",
"Coronavirus in Wuhan: The son who lost his father ",
"Coronavirus and teachers: The forgotten school key",
"Coronavirus: 'When coffins lined the streets of my",
"Lockdown learning 'made me feel a lot more confide",
"Covid: How to deal with social anxiety as restrict",
"Zanzibar halts fishing as storm Jobo approaches Ta",
"Female engineers behind Ghana's solar cars - BBC N",
"How a bicycle tripled one woman's income - BBC New",
"Tokyo Olympics: The challenges of training in a Co",
"Indonesia submarine search feared to have failed a",
"Torres Strait 8: Australian Islanders in landmark ",
"Heatwave sweeps Australian cities and raises bushf",
"Surfer reunited with big wave board discovered 2,7",
"Celebrities in Australia anger stranded citizens o",
"World’s largest ocean monitoring system BRUVS laun",
"Melbourne to Cairns: Meet the Australian skateboar",
"Lord Howe Island: Saving an Australian paradise's ",
"Saving green turtles... by cooling their eggs - BB",
"Rapper reptiles: Alligators make a splash at new h",
"Australia floods: Stranded bride airlifted to wedd",
"The dogs helping endangered Tasmanian devils find ",
"New Zealand airport worker tests positive day afte",
"Australia New Zealand bubble: Emotional families r",
"Byron Bay: Calls for Netflix boycott over reality ",
"These teenage climate activists are pushing for ch",
"Neighbours: Actress Sharon Johal also alleges raci",
"Cyclone Seroja: Storm leaves trail of damage in We",
"Cyclone Seroja: Fast-moving cyclone lashes Western",
"Putin opponent Navalny ends hunger strike in Russi",
"German gymnasts' outfits take on sexualisation in ",
"Alexei Navalny: Police detain hundreds of proteste",
"Navigating a mini Suez Canal in France - BBC News",
"Three abducted Catholic clergy released in Haiti -",
"Redonda: The Caribbean island transformed into an ",
"World Press Photo: ‘Finding love even in the most ",
"Coronavirus: The babies and children in Brazil's C",
"St Vincent volcano: Island covered in layer of gre",
"Ash falls like snow after St Vincent volcano erupt",
"Dame Floella Benjamin's youth to become 'uplifting",
"New species of dinosaur unearthed in Chile's Ataca",
"Big rise in numbers of migrant children on Mexico-",
"Coronavirus: 'I killed my mother with my own hands",
"East Jerusalem clashes leave over 100 injured - BB",
"Syrian air-defence missile lands near Israeli nucl",
"AI unlocks ancient Dead Sea Scrolls mystery - BBC ",
"Handcuffed, blindfolded and beaten on Libya's fron",
"Iran nuclear attack: Mystery surrounds nuclear sab"
],
"legendgroup": "False",
"marker": {
"color": "#EF553B",
"symbol": "circle"
},
"mode": "markers",
"name": "False",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
271,
488,
402,
581,
386,
419,
694,
1413,
760,
593,
946,
410,
487,
372,
1789,
1551,
2953,
2694,
310,
1212,
1073,
1307,
358,
1152,
477,
1406,
1104,
1161,
1459,
451,
502,
487,
351,
493,
2260,
393,
271,
54,
271,
271,
271,
419,
386,
372,
410,
487,
402,
402,
1240,
669,
675,
1215,
295,
397,
407,
764,
1071,
664,
460,
413,
389,
379,
375,
771,
1508,
1430,
383,
469,
326,
470,
330,
1064,
441,
1138,
1171,
793,
740,
1457,
347,
1227,
423,
450,
1355,
340,
524,
2422,
1600,
3251,
2584,
367,
2353,
432,
430,
365,
1289,
2431,
1789,
1316,
1759,
555,
364,
724,
518,
991,
961,
764,
712,
834,
396,
779,
569,
491,
453,
406,
713,
299,
380,
632,
744,
573,
679,
727,
435,
427,
455,
372,
674,
938,
742,
235,
1227,
495,
1080,
1044,
1022,
392,
380,
1086,
871,
1091,
1265,
897,
667,
633,
920,
837,
992,
835,
520,
833,
437,
678,
1211,
2169,
2686,
2182,
3425,
1168,
626,
1118,
764,
529,
577,
816,
893,
1430,
463,
484,
372,
452,
370,
1371,
475,
364,
423,
385,
817,
430,
828,
441,
1555,
450,
424,
422,
436,
444,
375,
415,
775,
432,
832,
508,
1034,
797,
438,
703,
860,
440,
405,
639,
1212,
521,
366,
478,
504,
836,
646,
676,
440,
702,
936,
733,
426,
1140
],
"xaxis": "x",
"y": [
100,
128,
82,
107,
120,
118,
107,
105,
111,
115,
111,
126,
118,
108,
120,
111,
110,
123,
76,
113,
116,
113,
119,
126,
118,
136,
123,
118,
116,
132,
125,
122,
104,
127,
120,
120,
100,
15,
100,
100,
100,
118,
120,
108,
126,
118,
116,
116,
110,
112,
118,
123,
115,
123,
126,
109,
119,
122,
122,
115,
115,
116,
105,
118,
122,
106,
115,
121,
118,
123,
111,
108,
122,
109,
110,
115,
109,
117,
104,
113,
120,
112,
120,
118,
111,
109,
106,
106,
110,
108,
107,
123,
117,
106,
114,
110,
120,
118,
114,
150,
110,
116,
105,
118,
116,
121,
116,
111,
114,
109,
105,
99,
114,
106,
102,
77,
81,
78,
83,
83,
82,
83,
121,
126,
132,
105,
82,
77,
108,
118,
115,
82,
110,
126,
109,
117,
119,
123,
122,
116,
115,
113,
109,
113,
117,
115,
110,
123,
121,
114,
119,
116,
127,
109,
115,
107,
103,
118,
115,
112,
111,
112,
112,
81,
107,
121,
129,
125,
104,
118,
110,
118,
111,
114,
120,
110,
107,
120,
118,
123,
115,
120,
126,
126,
117,
129,
111,
126,
115,
121,
115,
123,
120,
117,
126,
114,
111,
129,
126,
113,
117,
115,
111,
129,
130,
111,
114,
125,
123,
111,
115,
117,
126,
122
],
"yaxis": "y"
}
],
"layout": {
"legend": {
"title": {
"text": "is_political"
},
"tracegroupgap": 0
},
"margin": {
"t": 60
},
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"autotypenumbers": "strict",
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "Количество ссылок от количества слов"
},
"xaxis": {
"anchor": "y",
"domain": [
0,
1
],
"title": {
"text": "Количество слов"
}
},
"yaxis": {
"anchor": "x",
"domain": [
0,
1
],
"title": {
"text": "Количество ссылок"
}
}
}
},
"text/html": [
"
"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"hist_data = [better_table['time']]\n",
"group_labels = ['время загрзуки страниц'] \n",
"fig = ff.create_distplot(hist_data, group_labels, bin_size=0.1)\n",
"fig.update_layout(\n",
" title='Гистограмма времен загрузки страниц',\n",
" xaxis={'title':'Время'},\n",
" yaxis={'title':'Доля страниц'})\n",
"fig.show()"
]
},
{
"cell_type": "code",
"execution_count": 1412,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"import warnings\n",
"warnings.filterwarnings(\"ignore\")\n",
"# TODO удалить\n",
"plt.figure(figsize=(15, 10))\n",
"\n",
"sns.distplot(better_table['time'], bins = 35, norm_hist=True)\n",
"\n",
"plt.title('Гистограмма для времен загрузки')\n",
"plt.xlabel('Время загрузки')\n",
"plt.ylabel('Доля страниц')\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Я построил графики двумя способами только для сравнения. Распределение очень напоминает нормальное или быть может Коши."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Какими известными вам стандартными распределениями оно может быть приближено? Найдите оценку параметров этого распределения по методу моментов и отобразите на графике плотность с полученными значениями параметров.\n",
"\n",
"*Замечание.* Результат сильно зависит от сайта, железа и прочих характеристик. По идее должно получится неплохое приближение чем-то из того, что вам известно. Но если ничего не получится, то просто оставьте и прокомментируйте ваши попытки разобраться."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Кажется, что это похоже на нормальное распределение с учетом того, что время загрузки не может быть меньше 0.\n",
"Да что уж там, почти все в природе имеет нормальное распределение.\n",
"\n",
"По выведенному в пункте 4 для $\\mathcal{N}(a, \\sigma^2)$\n",
"\\begin{cases}\n",
" a = \\overline{X} \\\\\n",
" \\sigma^2 = \\overline{X^2} - \\overline{X}^2\n",
"\\end{cases}"
]
},
{
"cell_type": "code",
"execution_count": 1413,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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9WdmAAAAAHZdp0cKjUsyNsmKHWzzjCSPJblky4Ja651plU6n9Gs6AAAAAJ6QAR3ptA0fTfJIkv/ZwTazkyyrtXZvtXxJkr135cFuuummXQoHg938+fP7/THmzZvX748xEM+Dwc9xwnDjmGe4ccwznDjeGSo6VjqVUj6Q5DVJzqq1PjoQj3n00Udn7NixA/FQ0HHz588fkEJoIAyV50H/GUrHO/SFY57hxjHPcOJ4ZzBZv379Dgf4dOT0ulLKh5L8YZKza607q3CXJJmxjUnDZyVx9ToAAACA3dCAl06llI8keVdaI5yu7sNdfpZkfJJTe+3j4CSHJrmsX0ICAAAA8KQM6Ol1pZRPJXljklckub+UMru9al2tdWV7m3cmeWet9fAkqbUuKKV8J8m/lFLektak4p9Mck2SCwYyPwAAAAB9M9Ajnd6ZZGKS76d1atyWr0/22mZGkrLV/V6b5Mok30lyUZKlSV60jcnFAQAAANgNDOhIp1prVx+2+WCSD261bGWSN/RLKAAAAAAa15GJxAEAAAAY2pROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA45ROAAAAADRO6QQAAABA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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# подсчет через метод моментов\n",
"a = better_table['time'].mean()\n",
"time_sq = better_table['time'] * better_table['time']\n",
"sigma = (time_sq.mean() - better_table['time'].mean() ** 2) ** (0.5)\n",
"\n",
"plt.figure(figsize=(20, 10))\n",
"\n",
"x = np.linspace(a-3 * sigma, a + 3 * sigma, 100)\n",
"plt.plot(x, sps.norm.pdf(x, a, sigma))\n",
"plt.hist(better_table['time'], bins = 35, density=True)\n",
"\n",
"plt.title('Гистограмма для времен загрузок')\n",
"plt.xlabel('Доля')\n",
"plt.ylabel('Время загрузки')\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Выглядит не очень убеждающе. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Выводы:** Оказалось, что метод, выбранный для поиска политических новостей оказался непостоянным, при последней загрузке новостей он выдал меньший процент политических новостей, чем предыдущий, скорее всего это связано с ухудшением эпидемиалогической обстановки, из-за которой появилось все больше новостей о ковидн. Значит, можно было в первом пункте искать новости в разделе world, а во втором искать просто. Рассматривался вариант с проверкой заголовка на ключеввые слова, однако он сильно ухудшал производительность. \n",
"\n",
"Была собрана информация о времени загрузки страниц. К сожалению, метод моментов дал не слишком хорошие результаты, однако вид гистограммы мне точно напоминает нормальное распределение.\n",
"\n",
"Также была рассмотрена интересная зависимость количества ссылок на странице от количества слов, которую я проанализировал выше."
]
}
],
"metadata": {
"colab": {
"collapsed_sections": [],
"name": "stats.ipynb",
"provenance": [],
"version": "0.3.2"
},
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.5"
},
"widgets": {
"application/vnd.jupyter.widget-state+json": {
"state": {},
"version_major": 2,
"version_minor": 0
}
}
},
"nbformat": 4,
"nbformat_minor": 1
}